news 2026/4/16 14:20:08

Windows窗体应用:按钮事件全攻略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Windows窗体应用:按钮事件全攻略

关于windows窗体应用

一,按钮事件:

1,先在主页面进行设计具体流程:先打开视图-->找到工具箱,然后在工具栏搜索所需要的控件

设计图如下:

双击每一个控件都可以进入指定代码块中进行调整;

事件:触发函数的行为,例如在点击的时候调用一个函数 ,需要给按钮绑定一个点击事件,

事件也有很多种类:鼠标的点击事件、输入框textbox的TextChanged文本输入事件。键盘事件等

2,相关知识点:

# Button 常用属性

1 UseWaitCursor:是否使用等待鼠标类型

2 backgroundImage : 背景图

3 backgroundImagelayout: 背景图分布方式,tile:如果图片过小生成多张图片 ;stretch拉伸图片以适应控件大小 ;zoom按照图像原比例进行缩放图片

4, 4 TextAlign:对齐方式

5, 5 Dock 控件的停靠方式 设置处于父控件的哪个方向 top:处于父控件上面

相关代码:

/// <summary> /// 按钮的点击事件:1直接点击窗体上按钮 2按钮界面闪电标识符号找到对应事件名 点击生成一个事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { //textBox1.Text; 输入框文本内容 // label2.Text label2的文本 label2.Text = textBox1.Text; } /// <summary> /// label的点击事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void textBox1_TextChanged(object sender, EventArgs e) { // 输入文本的时候触发 label2.Text = textBox1.Text; } private void label2_Click(object sender, EventArgs e) { } private void label1_Click(object sender, EventArgs e) { } private void Form1_Load(object sender, EventArgs e) { }

二,事件多播

1,事件多播: 可以对一个控件通过使用+=添加事件或者-=删除事件

2,绑定事件也可以代码进行事件绑定

3,private void button3_Click(object sender, EventArgs e)
{
//参数1 object sender;代表当前点击的对象, 例如目前sender就是button
//一般使用sender必须强制转换指定控件类型
//参数2, EventArgs e ; 事件对象包含当前事件的一些信息,

4,,同上开始设计窗口控件如下:

相关代码:

public partial class Form1 : Form { public Form1() { InitializeComponent(); this.button1.Click += button3_Click; this.button2.Click += new System.EventHandler(button3_Click); } private void button3_Click(object sender, EventArgs e) { //2,第二种方法获取标题 Button b1 = (Button)sender; MessageBox.Show(b1.Text+ e.ToString()); //1, 当前点击按钮的标题 //MessageBox.Show(button3.Text); } private void button4_Click(object sender, EventArgs e) { this.button1.Click += button6_Click; } private void button5_Click(object sender, EventArgs e) { this.button1.Click -= button6_Click; } private void button6_Click(object sender, EventArgs e) { MessageBox.Show("弹窗效果"); } private void Form1_Load(object sender, EventArgs e) { } } }

三,图片切换

设计如下:

相关代码:

namespace _04_图片 { public partial class Form1 : Form { public Form1() { InitializeComponent(); //this.pictureBox1.Load(""); } int count = 1; private void button1_Click(object sender, EventArgs e) { count++; this.pictureBox1.Image = Image.FromFile($"C:Users\\李文壮\\Pictures\\Screenshots\\{count}.png"); if (count == 7) { count = 0; } } private void Form1_Load(object sender, EventArgs e) { } } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:24:18

Python智能抢票神器:大麦网自动化购票全攻略

还在为抢不到心仪演唱会门票而烦恼吗&#xff1f;&#x1f914; 今天我要分享一个真正的抢票神器——基于Python的大麦网自动化脚本&#xff0c;让你在热门演出开票时抢占先机&#xff01; 【免费下载链接】DamaiHelper 大麦网演唱会演出抢票脚本。 项目地址: https://gitcod…

作者头像 李华
网站建设 2026/4/16 9:24:10

智能内容解锁:这款浏览器插件让你轻松突破付费墙限制

智能内容解锁&#xff1a;这款浏览器插件让你轻松突破付费墙限制 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在当今数字化时代&#xff0c;优质内容往往被付费墙所阻挡&#xff0…

作者头像 李华
网站建设 2026/4/16 10:05:27

Keil4调试技巧全解:实战案例解析常见问题

Keil4调试实战全解&#xff1a;从下载失败到变量监控的深度排坑指南你有没有遇到过这样的场景&#xff1f;深夜加班&#xff0c;终于写完一段关键代码&#xff0c;兴冲冲打开Keil4准备调试——结果“No target connected”弹窗刺眼地跳出来&#xff1b;好不容易连上了&#xff…

作者头像 李华
网站建设 2026/4/16 4:28:35

Bypass Paywalls Clean完全指南:轻松解锁付费内容的终极方案

Bypass Paywalls Clean完全指南&#xff1a;轻松解锁付费内容的终极方案 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 你是否曾经遇到这样的情况&#xff1a;在学术研究时被顶级期刊…

作者头像 李华
网站建设 2026/4/16 4:33:43

PyTorch安装后import torch很慢?启用lazy loading优化

PyTorch安装后import torch很慢&#xff1f;启用lazy loading优化 在调试一个轻量级模型脚本时&#xff0c;你是否遇到过这样的场景&#xff1a;仅仅写了一行 import torch&#xff0c;却要等上好几秒才能继续执行&#xff1f;尤其是在 Jupyter Notebook 中启动内核、或者通过 …

作者头像 李华
网站建设 2026/4/16 4:34:46

Python安装环境混乱?Miniconda-Python3.11帮你重建秩序

Python环境混乱终结者&#xff1a;Miniconda Python3.11 实战指南 你有没有遇到过这样的场景&#xff1f;早上刚到工位&#xff0c;准备复现昨天跑通的模型&#xff0c;结果 import torch 报错——原来是昨晚装了个新工具包&#xff0c;不小心升级了 PyTorch&#xff0c;导致版…

作者头像 李华