c# – 悬停并单击时更改标签的颜色
发布时间:2020-12-15 23:37:16 所属栏目:百科 来源:网络整理
导读:我有关于改变标签外观的问题.这是截图: 这是你悬停鼠标时的颜色,我希望它像那样. 我想要的是它在我点击它时保持这种颜色.但由于我的鼠标控制,它不会像我想要的那样工作. 这是代码: private void btnArchives_MouseEnter(object sender,EventArgs e) { lblA
我有关于改变标签外观的问题.这是截图:
这是你悬停鼠标时的颜色,我希望它像那样. 这是代码: private void btnArchives_MouseEnter(object sender,EventArgs e) { lblArchives.BackColor = Color.FromArgb(9,18,28); //darkercolor } private void btnArchives_MouseLeave(object sender,EventArgs e) { lblArchives.BackColor = Color.FromArgb(15,34,53); //lightercolor } 我也试过鼠标悬停.虽然它看起来和鼠标一样. 编辑:我使用标签而不是按钮.我正在尝试下面的一些评论,非常感谢你. 解决方法
我使用这种技术,只是测试它,我认为它是你想要的.
Label clickedLabel; private void mouseEnter(object sender,EventArgs e) { Label theLabel = (Label)sender; if (theLabel != clickedLabel) theLabel.BackColor = Color.Red; } private void mouseLeave(object sender,EventArgs e) { Label theLabel = (Label)sender; if (theLabel != clickedLabel) theLabel.BackColor = Color.Yellow; } private void labelClick(object sender,EventArgs e) { setColor();//Calling this here so clickedLabel is still the old value Label theLabel = (Label)sender; clickedLabel = theLabel; } public void setColor() { if(clickedLabel != default(Label)) clickedLabel.BackColor = Color.Yellow; //Resetting clicked label because another (or the same) was just clicked. } 说明: 关于这种方法的最好的事情是,你拥有多少标签并不重要,你永远不会将它们仅作为发件人引用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |