C#(二十七)之C#窗体应用

简介: 学习C#窗体的基本用法。

QQ图片20220426145352.jpg

今天开始学习C#窗体。

(一):首先创建一个窗体应用程序


文件->新建->项目


QQ图片20220426145355.png


(二):窗体中的按钮和标签(button/label)


QQ图片20220426145358.jpg


点击工具箱,将其固定在屏幕上。


QQ图片20220426145400.jpg


设置按钮及标签属性时,记得修改其NAME属性Text属性


QQ图片20220426145403.jpg


QQ图片20220426145405.jpg


/**
         * 事件的方法
         */
        private void MyButton_Click(object sender, EventArgs e)
        {
            // 对话窗展示
            MessageBox.Show("HELLO 我的第一个窗体");
        }
        /**
         * 标签的方法
         */
        private void label1_Click(object sender, EventArgs e)
        {
        }
        private void button1_Click(object sender, EventArgs e)
        {
            // 这个对象的属性等于
            answer_label.Text = "答:阴阳八卦,异性相吸";
        }


(三):超链接标签(linklabel)


1:Linkcolor:超链接默认状态下的颜色。:

2:Activelinkcolor:超链接单击时候的颜色

3:Visitedlinkcolor:已访问过的超链接的颜色。

4:Linkbehavior:超链接下划线样式

5:事件:


QQ图片20220426145408.jpg


/**
         * 超链接事件
         */
        private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            // 设置点击后的链接颜色
            oneLink.LinkVisited = true;
            // 打开C盘(@是原样输出)
            System.Diagnostics.Process.Start(@"C:/");
        }
        private void linkLabel1_LinkClicked_1(object sender, LinkLabelLinkClickedEventArgs e)
        {
            // 设置点击后的链接颜色
            linkTwo.LinkVisited = true;
            // 打开网页
            System.Diagnostics.Process.Start("chrome","https://guanchao.site");
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
        private void linkLabel1_LinkClicked_2(object sender, LinkLabelLinkClickedEventArgs e)
        {
            // 设置点击后的链接颜色
            linkTwo.LinkVisited = true;
            // 打开应用
            System.Diagnostics.Process.Start("Notepad");
        }


(四):文本框(textbox)


1:属性


multiline:控制文本是否可以跨行。

AcceptsReturn:多行编辑控件是否允许输入回车。

AcceptsTab:多行编辑控件是否允许输入Tab键。

ReadOnly:只读

ScrollBars:针对多行控件,是否显示滚动条。

TabIndex:确定次控件应用键盘上的Tab索引

PasswordChar:显示密码字符

AcceptsButton:按回车键等于按确定键(窗体事件)

 

2:事件


Textchange事件:相当于javascript中的Change事件。

 

3:方法


Clear:清楚文本框中所有内容

Copy:将选定的内容复制

Cut:将选中的内容剪切

Paste:用剪切的文本替换选中的文本

ResetText:将text属性重新设置为默认值

Redo:重复上一操作

Redo:撤销上一操作


private void but_Click(object sender, EventArgs e)
        {
            string ques_str = quesBox.Text;
            string pass_str = passBox.Text;
            if (ques_str == "gc" && pass_str == "123456")
            {
                MessageBox.Show("操作成功");
            }
            else {
                MessageBox.Show("密码错误");               
            }
        }

 

(四):单选按钮(RadioButton)


1:属性:


Checked:单选按钮是否已经选中。

 

C#中的单选按钮的NAME属性不需要相同


// 定义一个变量存储性别
        public string sex;
        // 选择男,给标签赋值
        private void boy_radio_CheckedChanged(object sender, EventArgs e)
        {
            sex = "男";
        }
        // 选择女,给标签赋值
        private void gr_radio_CheckedChanged(object sender, EventArgs e)
        {
            sex = "女";
        }
        // 点击确认按钮走的事件
        private void button1_Click_1(object sender, EventArgs e)
        {
            if (boy_radio.Checked == false && gr_radio.Checked == false)
            {
                MessageBox.Show("请选择性别");
            }
            else {
                MessageBox.Show("您的相别是:"+sex);
            }
        }

 

(五):复选框(CheckBox)


1:属性:


Checked:复选按钮是否已经选中。

CheckState:组件状态(三种状态);

 

复选框与单选框类似,这里不做举例,参考单选框。

 

(六):数字输入框(NumericUpDown)


1:属性


Increment:点击一次后边的加号所增长的数字

MiniMum:输入框最小值

MaxMum:输入框最大值

Value:默认值

 

2:事件


ValueChanged:默认事件(值改变)


public int num;
        private void numericUpDown1_ValueChanged(object sender, EventArgs e)
        {
            num = Convert.ToInt32(numUpOne.Text);
            Font ff = new Font("黑体", num);
            label4.Font = ff;
        }
        private void num_button_Click(object sender, EventArgs e)
        {
            int nums = num + 1;
            MessageBox.Show("您输入的数字是" + nums);
        }


(七):群组框(GroupBox)


这个没有什么,就是一个分区作用。


把各部分功能分区放置。


QQ图片20220426145410.jpg


目录
相关文章
|
1月前
|
Java 数据库 C#
C#winforms实现windows窗体人脸识别
C#winforms实现windows窗体人脸识别
33 0
|
6月前
|
关系型数据库 MySQL C#
C# winform 一个窗体需要调用自定义用户控件的控件名称
给用户控件ucQRCode增加属性: //二维码图片 private PictureBox _pictureBoxFSHLQrCode; public PictureBox PictureBoxFSHLQrCode {   get { return _pictureBoxFSHLQrCode; }   set { this.pictureBoxFSHLQrCode = value; } } 在Form1窗体直接调用即可: ucQRCode uQRCode=new ucQRCode(); ucQRCode.PictureBoxFSHLQrCode.属性= 要复制或传给用户控件上的控件的值
37 0
|
4月前
|
JavaScript Linux C#
【傻瓜级JS-DLL-WINCC-PLC交互】1.C#用windows窗体控件创建.net控件
【傻瓜级JS-DLL-WINCC-PLC交互】1.C#用windows窗体控件创建.net控件
65 0
|
4月前
|
C# Windows
C#安装“Windows 窗体应用(.NET Framework)”
C#安装“Windows 窗体应用(.NET Framework)”
52 0
|
4月前
|
C# 数据安全/隐私保护
C# 窗体之间参数互相传递的两种方法与使用
C# 窗体之间参数互相传递的两种方法与使用
|
10月前
|
C# 数据安全/隐私保护
ApeForms | C# WinForm窗体控件平滑减速运动
在桌面软件开发中,有时会需要控制窗体或控件移动以实现某些界面效果,比如幻灯片换页、侧面的展开栏等。 通常情况下我们会使用Timer以每隔一段时间修改一下坐标位置的方式来实现目标对象的位移效果,但通过这个方式实现的动效存在几个问题: 匀速运动效果生硬; 运动过程中不便灵活改变运动状态(如侧栏展开一半时令其收起); 动效多时需要创建多个Timer对象,不易管理且占用资源; ApeForms中为控件和窗体提供了平滑运动的扩展方法,很好的解决了这些问题。不仅是坐标的平滑运动,还有控件\窗体尺寸的平滑变化、透明度的平滑变化。允许在变化的中途随时更改目标坐标\尺寸\透明度,且使用共享的Timer
11254 1
ApeForms | C# WinForm窗体控件平滑减速运动
|
C# Windows 容器
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
C#面向对象程序设计课程实验二: 实验名称:Windows 窗体程序
|
C#
C#中获得窗体的句柄
C#中获得窗体的句柄
223 0
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
C#编程学习19:mdi窗体中子窗体不能重复打开的三种实现方式
|
数据库 C#
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作
C#编程学习18:使用多文档窗体框架利用DataGridView对Access数据表进行增删改及导出excel操作