C#如何点击一个按纽,其余按纽恢复默认色
答案:1 悬赏:0 手机版
解决时间 2021-03-05 12:48
- 提问者网友:山高云阔
- 2021-03-04 18:53
C#如何点击一个按纽,其余按纽恢复默认色
最佳答案
- 五星知识达人网友:千夜
- 2021-03-04 19:16
你可以参考一下:
1、定义一个Button类的子类,在子类中实现你要的所有功能。
进菜单,工程-添加-新建项,新建一个如下的C#类:
public class MyButton : System.Windows.Forms.Button
{
public MyButton()
{
this.BackColor=System.Drawing.Color.Blue;
this.Click+=delegate(object sender, EventArgs e)
{
this.BackColor=System.Drawing.Color.Orange;
MyButton.ClickedButton=this;
};
this.MouseEnter+=delegate(object sender, EventArgs e)
{
if(null!=MyButton.ClickedButton)
{
MyButton.ClickedButton.BackColor=System.Drawing.Color.Blue;
}
this.BackColor=System.Drawing.Color.Orange;
};
this.MouseLeave+=delegate(object sender, EventArgs e)
{
if(null!=MyButton.ClickedButton)
{
MyButton.ClickedButton.BackColor=System.Drawing.Color.Orange;
}
if(MyButton.ClickedButton!=this)
{
this.BackColor=System.Drawing.Color.Blue;
}
};
}
private static MyButton ClickedButton=null;
}
2、在窗体的“工具”中,选择“自定义组件”,将若干个MyButton拖到窗体中。
1、定义一个Button类的子类,在子类中实现你要的所有功能。
进菜单,工程-添加-新建项,新建一个如下的C#类:
public class MyButton : System.Windows.Forms.Button
{
public MyButton()
{
this.BackColor=System.Drawing.Color.Blue;
this.Click+=delegate(object sender, EventArgs e)
{
this.BackColor=System.Drawing.Color.Orange;
MyButton.ClickedButton=this;
};
this.MouseEnter+=delegate(object sender, EventArgs e)
{
if(null!=MyButton.ClickedButton)
{
MyButton.ClickedButton.BackColor=System.Drawing.Color.Blue;
}
this.BackColor=System.Drawing.Color.Orange;
};
this.MouseLeave+=delegate(object sender, EventArgs e)
{
if(null!=MyButton.ClickedButton)
{
MyButton.ClickedButton.BackColor=System.Drawing.Color.Orange;
}
if(MyButton.ClickedButton!=this)
{
this.BackColor=System.Drawing.Color.Blue;
}
};
}
private static MyButton ClickedButton=null;
}
2、在窗体的“工具”中,选择“自定义组件”,将若干个MyButton拖到窗体中。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯