winform的Form窗体基础

最近搞一个winform的socket编程的课设,平时对winform这块没有研究,以为和C# web差不多的,不曾想窘状百出。没办法,只能硬着头皮赶紧学Form窗体的一些基本知识和socket编程。


首先,谈一谈学Form窗体的一些认识和感悟。

1.关于窗体应用的创建就不说了,当我们在一个项目中添加了多个窗体,

随之而来的调试问题就是:怎么设置首先运行的窗体呢?

解决方案:一般我们建项目之后,在项目中我们会找到有Program.cs文件,双击打开之后里面有一行:Application.Run(new ***());

***代表起始运行的窗体名,我们只要把***这部分改成我们想要起始运行的窗体名就可以了。


2.更改窗体的图标,在窗体的属性中有Icon这个属性,单击选择我们要设置的图片即可。


3.隐藏窗体标题栏:把窗体的属性FormBorderStyle设为None即可。

FormBorderStyle的属性值:

Fixed3D:固定的三维边框

FixedDialog:固定的对话框样式的粗边框

FixedSingle:固定的单行边框

FixedToolWindow:不可调整大小的工具窗口边框

None:无边框

Sizable:可调整大小的边框

SizableToolWindow:可调整大小的工具窗口边框


4.控制窗口的显示位置StartPosition属性来实现

CenterParent:窗体在其父窗体中居中

CenterScreen:窗体在当前显示窗口中居中,其尺寸在窗体大小中指定

Manual:窗体的位置由Location属性确定

WindowsDefaultBounds:窗体定位在Windows默认位置,边界由Windows默认决定

WindowsDefaultLocation:窗体定位在Windows默认位置,其尺寸在窗体大小中指定


5.修改窗体大小:双击Size属性,有Width和Height两个属性,分别设置即可。


6.设置窗体背景图片:通过BackgroundImage属性实现

打击打开有两种选择:

选择本地资源,保存的是图片的路径

选择项目资源文件,将选择的文件保存到项目资源文件Resource.resx中


7.窗体的显示和隐藏:这是块大头

显示:Form form = new Form();form.Show();

隐藏:Form form = new Form();form.Hide();

首先,Show()和Hide()是非静态方法,所以我们需要创建窗体对象进行调用。

其次,使用Hide(),窗体所占用的资源并没有从内存中释放掉,而是继续存储在内存中,所以我们可以随时再调用Show()方法进行显示隐藏的窗体。

如果我们要关闭当前窗体时也关闭所有的隐藏窗体,则:Application.exit();


8.触发窗体事件:单击属性栏里的闪电图标就能看到窗体所有的事件。双击Click即可创建了窗体的Click事件。

private void Form_Click(object sender,EventArgs e){}


9.窗体加载事件(Load),创建过程同上

private void Form_Load(object sender,EventArgs e){}


10.窗体关闭事件(FormClosing)

private void Form_FormClosing(object sender,FormClosingEventArgs e){}


11.我们通常想在窗体中给用户弹出提示框,就像js的confirm一样。

我们可以这样做:

首先,MessageBox.Show()是弹出框的,类似js的alert

其次,这个是使用if语句判断是否单击了"是"按钮:

if(MessageBox("是否查看窗体!","","MessageBoxButton.YesNo,MessageBoxIcon.Information")==DialogResult.OK){}


也可以这样:

DialogResult dr=MessageBox("是否查看窗体!","","MessageBoxButton.YesNo,MessageBoxIcon.Warning");

dr==DialogResult.YES.......


  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WinForm中,要复制一个窗体,可以使用以下步骤: 1. 创建一个新的窗体对象,例如`Form2 form2 = new Form2();`。 2. 将新窗体的属性设置为与原窗体相同,例如设置窗体的大小、位置、标题等。 3. 将原窗体的控件复制到新窗体中,可以使用`form2.Controls.AddRange(form1.Controls.OfType<Control>().ToArray());`将原窗体的控件添加到新窗体中。 4. 如果需要复制事件处理程序,可以使用`form2.eventName += form1.eventName;`将原窗体的事件处理程序复制到新窗体中。 5. 最后,显示窗体,可以使用`form2.Show();`或者`form2.ShowDialog();`方法显示窗体。 需要注意的是,复制窗体只是复制了窗体的外观和控件,窗体的状态和数据并没有复制。如果需要复制窗体的状态和数据,需要手动将相关数据复制到新窗体中。 #### 引用[.reference_title] - *1* *2* [winform窗体嵌入窗体](https://blog.csdn.net/qq_39569480/article/details/127439593)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [winformForm窗体基础](https://blog.csdn.net/u010792238/article/details/28616933)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值