如何向C#窗体中添加按钮控件

如何向C#窗体中添加按钮控件,第1张

用代码向窗体添加控件步骤如下

(1)实例化一个控件;

(2)设置控件实例属性;

(3)将控件实例添加到窗体的Controls集合中

【示例】用代码向窗体添加一个命令按钮,单击这个按钮关闭窗口并退出

(1)在Visual Studio中新建一个“Windos 窗体应用程序”

(2)窗体代码Form1.cs如下:

using System

using System.Collections.Generic

using System.Windows.Forms

using System.Drawing

namespace WindowsFormsApplication1

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent()

//实例化一个命令按钮

Button btn = new Button()

//设置命令按钮的属性

btn.Location = new Point(50, 50)

btn.Size = new Size(80, 25)

btn.Text = "退出"

btn.Click += btn_Click

//添加到窗口的Controls集合中

this.Controls.Add(btn)

}

void btn_Click(object sender, EventArgs e)

{

this.Close()

}

}

}

(3)运行效果

窗体启动后

点击“退出”按钮后,窗口关闭。

用代码向窗体添加控件步骤如下

(1)实例化一个控件;

(2)设置控件实例属性;

(3)将控件实例添加到窗体的Controls集合中

【示例】用代码向窗体添加一个命令按钮,单击这个按钮关闭窗口并退出

(1)在Visual Studio中新建一个“Windos 窗体应用程序”

(2)窗体代码Form1.cs如下:

using System

using System.Collections.Generic

using System.Windows.Forms

using System.Drawing

namespace WindowsFormsApplication1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent()

            

            //实例化一个命令按钮

            Button btn = new Button()

            

            //设置命令按钮的属性 

            btn.Location = new Point(50, 50)

            btn.Size = new Size(80, 25)

            btn.Text = "退出"

            btn.Click += btn_Click

            

            //添加到窗口的Controls集合中

            this.Controls.Add(btn)

        }

        void btn_Click(object sender, EventArgs e)

        {

            this.Close()

        }

    }

}

(3)运行效果

窗体启动后

点击“退出”按钮后,窗口关闭。

C语言写界面的话只能直接调用API函数.

直接调用API函数非常的繁琐. 需要了解一些Windows窗口和消息循环原理.

举个例子吧, 下面就是一个API函数, 需要包含windows.h头文件, 这个函数用来创建1个窗口

HWND WINAPI CreateWindowEx(

DWORD dwExStyle, // 窗口扩展风格

LPCTSTR IpClassName,// 窗口类名

LPCTSTR lpWindowName, // 窗口标题

DWORD dwStyle, // 窗口样式

int x,int y, // 窗口的坐标x y

int nWidth, int nHeight, // 窗口的高度和宽度

HWND hWndParent, // 父级窗口句柄

HMENU hMenu, // 菜单句柄

HANDLE hInstance,// 程序的实例句柄

LPVOID lpParam // 额外参数

)

不要嫌参数多(虽然确实很多), 这都是一个窗口必不可少的属性, 事实上调用这个API之前你还必须填充一个10个成员的巨大结构, 用来确定窗口的背景, 风格, 图标等属性.

为什么C#创建窗口这么简单, C#同样是调用这个API来创建窗口的, 只不过它把那些细节的东西全都封装了起来, 程序员看不到了而已, 但是你如果要用C来写界面就必须要面对这些.

虽然API繁琐, 但是和C#相比, 无疑更加能够让你真正理解 *** 作系统的原理和实现细节


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11296758.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存