如何检查"计数是否等于50然后"?

时间:2015-03-06 16:57:21

标签: c# vb.net

完全编辑问题以获得更多理解。

我有一个计数功能,我有一个检查当前计数的标签

这是标签

        private void currentCountLabel_TextChanged(object sender, EventArgs e)
    {

    }

如果标签到达示例50,我该如何制作,一个功能开始。喜欢播放声音?

//////////////////////////////

这是@btc来源的当前一个,给了我

        private void currentCountLabel_Click(object sender, EventArgs e)
    {
        if (String.Compare(currentCountLabel.Text, "5") == 0)
        {
            System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"sound.wav");
            player.Play();
        }     
    }

但它不会自动播放,当它达到数字时如何让它播放?

/////////////////////////////////////////////// ////////////////////////////////

        private void currentCountLabel_TextChanged(object sender, EventArgs e)
    {
        if (String.Compare(currentCountLabel.Text, "5") == 0)
        {
            System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"meme.wav");
            player.Play();
        }     
    }

        private void writeToFile()
    {
        if (Properties.Settings.Default.OBSToggle)
        {
            if (Properties.Settings.Default.ReverseOrder)
            {
                File.WriteAllText(@"Count.txt", String.Format("{0} {1}", Count.ToString(), Message));

            }
            else
            {
                File.WriteAllText(@"Count.txt", String.Format("{0} {1}", Message, Count.ToString()));
            }
        }

 private void KeyBoardHook_KeyUp(object sender, KeyEventArgs e)
    {
        if (Properties.Settings.Default.HotKeyEnabled && e.KeyCode == Properties.Settings.Default.HotKeyIn)
        {
            if (Properties.Settings.Default.SaveCount)
            {
                Count = Count + 1;
                Properties.Settings.Default.Count = Count;
                currentCountLabel.Text = Properties.Settings.Default.Count.ToString();
            }
            else
            {
                Count = Count + 1;
                currentCountLabel.Text = Count.ToString();
            }
            Message = messageTextBox.Text;
            writeToFile();
            e.Handled = true;
        }
        if (Properties.Settings.Default.HotKeyEnabled && e.KeyCode == Properties.Settings.Default.HotKeyDe && Count != 0)
        {
            if (Properties.Settings.Default.SaveCount)
            {
                Count = Count - 1;
                Properties.Settings.Default.Count = Count;
                currentCountLabel.Text = Properties.Settings.Default.Count.ToString();
            }
            else
            {
                Count = Count - 1;
                currentCountLabel.Text = Count.ToString();
            }
            Message = messageTextBox.Text;
            writeToFile();
            e.Handled = true;
        }
    }

2 个答案:

答案 0 :(得分:0)

您应该使用标签中的TextChanged事件,而不是Click事件。然后,在其中,您应该执行以下操作:

private void currentCountLabel_TextChanged(object sender, EventArgs e)
{
    if (String.Compare(currentCountLabel.text, "50") == 0)
    {
        //Your code
    }
}

对于此代码,您只能在标签中获得点击次数。如果你不单独使用它,那么你应该只使用数字部分进行比较。

已更新:由于您的问题不明确,还有另一种方法可以解决问题。我也会尝试这样回答:

也许您正在尝试将标签用作按钮,以便检查您的金额。然后,您将需要:

1.-一个全局整数变量,它将由您的Count函数更新。

2.-在您的标签的Click事件中,例如:

if (50 == yourIntegerGlobalVar)
{
    //Your code to be executed
}

更新2 :要在到达您想要的号码时自动播放声音,而不是必须点击它,请使用我先说过的TextChanged事件而不是{ {1}}事件。然后就可以自己玩了。

答案 1 :(得分:0)

您需要一个静态变量来保存当前计数。初始化为零。然后在每次执行函数时递增它。

然后用if语句评估计数并采取任何行动。