c面板的背景颜色变化很慢(或者事件很慢)

本文关键字:事件 或者 变化 背景 颜色 | 更新日期: 2023-09-27 18:28:41

我正在c#中对VS2013中的游戏主谋进行变体。我遇到的问题是,我制作了4个小面板,人们可以点击它们来设置代码。当他们点击面板时,会启动一个事件,该事件会更改面板的背景色。我的问题是,如果我点击面板,颜色变化太慢。当您尝试快速滚动颜色时,这一点最为明显。在切换到下一个之前,需要半秒钟的时间。我试着把我对事件所做的每一点代码都注释掉,除了颜色的变化,但这没有帮助,所以我不认为代码运行时间太长。有人有这方面的经验吗?

编辑:使用Visual Studio 2013中的标准表单这是你们中的一些人要求的代码。。。虽然不多

    private void InputCode1Clicked(object sender, EventArgs e)
    {
        code1++;
        if (code1 > 5)
        {
            code1 = 0;
        }
        this._input1.BackColor = ENUMS.GetColor((ENUMS.color)code1);
        _controller.InputCodeClicked(sender, e, 1);
    }

请记住,即使是这样:

    private void InputCode1Clicked(object sender, EventArgs e)
    {
        this._input1.BackColor = ENUMS.GetColor((ENUMS.color)code1);
    }

它仍然运行缓慢。。。

c面板的背景颜色变化很慢(或者事件很慢)

修复它!使用mouseDown事件而不是mouseclicked/clicked事件解决了我的问题。。。

MouseDown很有帮助,因为当你快速点击时,你可能会每秒双击一次,而不是点击。鼠标向下键不受双击的影响。