【问题标题】:C# Changing color of label based on trackbar valueC#根据轨迹栏值更改标签颜色
【发布时间】:2014-10-02 01:30:01
【问题描述】:

我正在使用一个值为 0 到 100 的轨迹栏。在我的代码中,您在下图中看到自动 = 0。

我想要完成的是,任何低于 35 的数字都应将标签 (lableFS) forcolor 更改为红色,而任何高于此的数字应将标签前色更改为绿色。我的工作正常,但是这里的例外应该是如果轨迹栏的值为 0 或者即使 labelFS 文本设置为“自动”,那么 labelFS 前景色应该是黑色的。下面是一个 gif 图像,它将向您展示我的意思以及我当前的代码。

提前感谢您的帮助!

我知道这是一个简单的问题,但是我尝试了很多方法,但我似乎找不到阻止它变成黑色的原因。

        private void fanSlider_Scroll(object sender, EventArgs e)
    {
        lblFS.Text = "" + fanSlider.Value * 5;

        if (lblFS.Text == "0")
        {
            lblFS.Text = "Automatic";
        }

        int value;
        if (Int32.TryParse(lblFS.Text, out value))
        {
            if (value <= 35)
            {
                lblFS.ForeColor = System.Drawing.Color.Red;
            }
            if (value > 35)
            {
                lblFS.ForeColor = System.Drawing.Color.Green;

            }

            if (value == 0)
            {
                lblFS.ForeColor = System.Drawing.Color.Black;
            }
        }


    }

【问题讨论】:

  • 直接使用 fanSlider.Value 而不是检查标签文本
  • 我现在要回去做,谢谢你的提示。

标签: c# colors trackbar


【解决方案1】:

我认为这里发生的情况是,每当条形图为 0 时,您将其文本设置为 Automatic,然后您尝试更改其颜色,检查其文本是否为 0,但由于您已经将其更改为 @ 987654322@条件永远为假...

试试这个:

private void fanSlider_Scroll(object sender, EventArgs e)
{
    lblFS.Text = "" + fanSlider.Value * 5;
    if (lblFS.Text == "0")
    {
        lblFS.Text = "Automatic";
        lblFS.ForeColor = System.Drawing.Color.Black;
    }
    int value;
    if (Int32.TryParse(lblFS.Text, out value))
    {
        if (value <= 35)
        {
            lblFS.ForeColor = System.Drawing.Color.Red;
        }
        if (value > 35)
        {
            lblFS.ForeColor = System.Drawing.Color.Green;
        }
    }
}

【讨论】:

  • 这就是我想的,我想我现在有一个心理障碍,无法找出它发生在哪里。无论如何,这有效,感谢您的帮助!
  • @user3627587 乐于助人... :) 有时这也发生在我身上,非常愚蠢的小错误需要我的时间,我一直试图找到错误,但我不能,当我下次找到它时天,我说该死! :P 如果这有帮助,请选择它作为答案并投票。
猜你喜欢
  • 2016-05-24
  • 2018-07-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多