点击第一个按钮第一个灯亮,点击第二个按钮第二个灯亮,第一个灯灭,类似这样的操作。按钮用的是radiobutton。想知道代码该如何编写。
2条回答 默认 最新
- qq_37749055 2023-09-05 10:39关注
在WinForms中,你可以通过在事件处理器中跟踪哪个按钮被点击来实现这个功能。以下是一个简单的例子,假设你有一个数组,其中包含与按钮对应的指示灯的引用。
首先,假设你有一个RadioButton[]数组,其中包含所有按钮的引用,以及一个Light[]数组,其中包含所有灯的引用。
RadioButton[] buttons = new RadioButton[] { button1, button2, button3 }; Light[] lights = new Light[] { light1, light2, light3 }; int selectedButtonIndex = 0;
然后,你可以为每个按钮的Click事件添加一个处理器:
foreach (RadioButton button in buttons) { button.Click += Button_Click; }
在处理器中,你可以根据当前选中的按钮来开/关相应的灯:
void Button_Click(object sender, EventArgs e) { if (((RadioButton)sender).Checked) { // 找到当前选中的按钮的索引 int index = Array.IndexOf(buttons, sender as RadioButton); // 关闭所有灯 foreach (Light light in lights) { light.Off(); } // 打开当前选中的按钮对应的灯 lights[index].On(); } }
这个例子假设你的Light类有On()和Off()方法,分别用于打开和关闭灯。你可能需要根据你的具体实现进行调整。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
- ¥15 安装quartus II18.1时弹出此error,怎么解决?
- ¥15 keil官网下载psn序列号在哪
- ¥15 想用adb命令做一个通话软件,播放录音
- ¥30 Pytorch深度学习服务器跑不通问题解决?
- ¥15 部分客户订单定位有误的问题
- ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
- ¥15 Bug traq 数据包 大概什么价
- ¥15 在anaconda上pytorch和paddle paddle下载报错
- ¥25 自动填写QQ腾讯文档收集表