gpt4 book ai didi

c# - 自定义按钮鼠标离开事件

转载 作者:行者123 更新时间:2023-11-30 12:52:26 24 4
gpt4 key购买 nike

我用一些面板和图片框制作了一个自定义按钮。使用 MouseEnter 和 MouseLeave,我可以像普通按钮一样设置适当的悬停图像。

问题是,如果我在控件上移动鼠标太快,它有时不会触发 MouseLeave 事件。这样按钮就被“锁定”在悬停状态。

截图问题: http://www.jesconsultancy.nl/images/screens/screen_prblm.png

右边的按钮锁定在“悬停”状态。

我该如何解决这个问题?

谢谢。

最佳答案

我的天……真是一团糟!
首先,UserControl 有很多问题。我建议您改为让您的控件继承自 Control 并自己绘制图像和文本。
其次,为什么要使用反射?
第三,为什么会有这么多控件?

这会错过事件,因为更新时间太长了!

这里有一些简单的控制代码,绝不会错过任何一个事件:

using System;
using System.Drawing;
using System.Windows.Forms;

namespace lol
{
public class BlackWhiteControl : Control
{
protected override void OnMouseEnter(EventArgs e)
{
base.OnMouseEnter(e);

this.BackColor = Color.Black;
}

protected override void OnMouseLeave(EventArgs e)
{
base.OnMouseLeave(e);

this.BackColor = Color.White;
}
}
}

关于c# - 自定义按钮鼠标离开事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4522949/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com