当前位置:   article > 正文

WinForm(一) WinForm入门与基本控件使用

winform

一.Winform入门

WinForm 是 Windows Form 的简称,是基于 .NETFramework 平台的客户端(PC软件)开发技术,一般使用C#编程。在VS2019中,C# WinForm 编程需要创建「Windows窗体应用程序」项目。Windows 窗体应用程序是 C# 语言中的一个重要应用,也是 C# 语言最常见的应用。使用 C# 语言编写的 Windows 应用程序与 Windows 操作系统的界面类似,每个界面都是由窗体构成的,并且能通过鼠标单击、键盘输入等操作完成相应的功能。WinForm支持可视化设计,简单易上手,并可以接入大量的第三方UI库或自定义控件,给桌面应用开发带来了无限可能。

1.WinForm项目结构

1.WinForm项目结构
(1)引用:包括所有的系统库文件的引用依赖
(2)App.config:当前项目的配置文件
(3)Form1.cs:当前窗体的事件逻辑源码
- Form1.Designer.cs:当前窗体的控件布局源码
- Form1.resx:当前窗体的资源文件(图片、图标、资源等)
- 注意:
a.Form1.cs和Form1.Designer.cs都定义了Form1类,该类使用了Partial关键词声明,其定义的类可以在多个地方被定义,最后编译的时候会被当作一个类来处理。因此两个文件各司其职,最后合并为一个类编译。
b.要手动实现自定义窗体,可以添加自己的类,然后继承Form类即可
(4)Program.cs:当前项目程序的主入口Main,启动项目,运行初始窗口

namespace WindowsFormsApp_learning
{
	//Program.cs 入口程序解读
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        //1.[STAThread]  Attributes语法,修饰Main方法。示应用程序的默认线程模型是单线程单元 (STA)
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            //2.开启窗口的消息循环,初始化并启动Form1窗口
            Application.Run(new Form1());
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

2.窗口设计与控件布局

2.窗体控件布局文件

(1)操作:在设计界面拖拽控件,可以完成界面布局(控件大小、名称、类型、样式等) (2)原理:设计界面自动关联Form1.Designer.cs文件,在InitializeComponent()方法中会自动生成相关代码

(3)设计原则:

- Form1.Designer.cs文件:窗体控件布局文件,一般【不需要我们修改】,只要通过设计界面代码就会自动生成。

- Form1.cs文件:窗体事件逻辑代码的实现,一般【需要我们手动书写】,包括触发事件、回调、数据交互、跳转等等

3.手动添加控件:不通过设计界面,有两种方式

(1)在Form1.Designer.cs中添加:

          private System.Windows.Forms.Button btn_design;//声明控件
           //默认的控件初始化方法
           InitializeComponent():{
               this.btn_design = new System.Windows.Forms.Button();//定义控件
               this.btn_design.Text = "自定义控件";//设置Text属性
               this.btn_design.Location = new Point(40,40);//设置布局位置 Point(x,y)
               this.btn_design.Size = new Size(100,40);//设置尺寸大小 Size(width,height)
               this.Controls.Add(this.btn_design);//注册控件到窗体
           }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

(2)在Form1.cs中添加:

           private Button btn_design;//声明控件
           public Form1(){
               //先调用Designer.cs中的控件初始化方法
               InitializeComponent();
               this.btn_design = new System.Windows.Forms.Button();//定义控件
               this.btn_design.Text = "自定义控件";//设置Text属性
               this.btn_design.Location = new Point(40,40);//设置布局位置 Point(x,y)
               this.btn_design.Size = new Size(100,40);//设置尺寸大小 Size(width,height)
               this.Controls.Add(this.btn_design);//注册控件到窗体
           }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

(3)注意:

1.一般我们都使用拖拽添加控件,当然也有特殊情况需要我们手动添加(比如自定义控件
2.窗体GUI中,左上角为原点(0,0),竖直向下为y轴,水平向右为x轴(宽度表示x轴上长度,高度表示y轴上长度),单位为像素。

3.窗口事件

4.WinForm 自动添加事件处理
(1)操作:在设计界面-控件属性-闪电符号(事件)-添加事件,就会在Form1.cs中自动生成该控件相应方法名称的事件触发函数
(2) MessageBox.Show():显示弹出消息提示框
(3)GUI界面下Console.WriteLine不显示,需要使用调试模式

namespace WindowsFormsApp_learning
{

    /**
     * 4.WinForm事件处理
     *  (1)操作:在设计界面-控件属性-闪电符号(事件)-添加事件,就会自动生成相应方法名称的事件触发函数
     *  (2) MessageBox:显示消息提示框
     *  (3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/137825
推荐阅读
  

闽ICP备14008679号