使面板控制透明
本文关键字:透明 控制 | 更新日期: 2023-09-27 17:51:06
我有一个面板控件,它有一个背景图片。我想改变它的不透明度,当我把鼠标移到它上面。我该怎么做呢?我试着:
btnExit.BackColor = Color.FromArgb(20,63,63,63);
btnExit.BackColor = Color.FromArgb(20);
但是什么都没有改变…知道为什么不行吗?这个面板是坐在另一个面板,也有背景图片。谢谢!
这是可以做到的,据我所知,用你的方法,但我猜你必须刷新控件。
btnExit.Refresh();
编辑:首先将按钮的FlatStyle设置为Flat。
this.btnExit.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
然后创建两个函数btnExit_MouseHover和btnExit_MouseLeave:
void btnExit_MouseHover(object sender, EventArgs e)
{
btnExit.BackColor = Color.FromArgb(20, 63, 63, 63);
btnExit.Refresh();
}
void btnExit_MouseLeave(object sender, EventArgs e)
{
btnExit.BackColor = Color.FromArgb(100, 63, 63, 63);
btnExit.Refresh();
}
要激活这些函数,添加两个eventhandler:
btnExit.MouseHover += new EventHandler(btnExit_MouseHover);
btnExit.MouseLeave += new EventHandler(btnExit_MouseLeave);
这个就可以了,现在你只需要把背景色改成你喜欢的那个;)