-1
私はこの小さなプログラムをHead First C#と読んでいました。私は難易度のレベルのnumericUpDownコントロールを設定するために、ユーザーが一時停止するプログラムを取得しようとしています。コードは次のとおりです。C#でユーザーコントロールを一時停止する方法は?
namespace WACK
{
public partial class Form1 : Form
{
public int level;
Mole mole;
Random random = new Random();
public Form1()
{
InitializeComponent();
mole = new Mole(random, new Mole.PopUp(MoleCallBack));
MessageBox.Show("Select a Level");
if (level == 1)
{
timer1.Interval = random.Next(500, 500);
}
if (level == 2)
{
timer1.Interval = random.Next(400, 400);
}
if (level == 3)
{
timer1.Interval = random.Next(300, 300);
}
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
ToggleMole();
}
private void ToggleMole()
{
if (mole.Hidden == true)
mole.Show();
else
mole.HideAgain();
if (level == 1)
{
timer1.Interval = random.Next(500, 500);
}
if (level == 2)
{
timer1.Interval = random.Next(400, 400);
}
if (level == 3)
{
timer1.Interval = random.Next(300, 300);
}
timer1.Start();
}
private void MoleCallBack(int moleNumber, bool show)
{
if (moleNumber < 0)
{
timer1.Stop();
return;
}
Button button;
switch (moleNumber)
{
case 0: button = button1; break;
case 1: button = button2; break;
case 2: button = button3; break;
case 3: button = button4; break;
case 4: button = button5; break;
case 5: button = button6; break;
case 6: button = button7; break;
case 7: button = button8; break;
default: button = button9; break;
}
if (show == true)
{
button.Text = "Hit Me!";
button.BackColor = Color.Red;
}
else
{
button.Text = "";
button.BackColor = SystemColors.Control;
}
timer1.Interval = random.Next(500, 1000);
timer1.Start();
}
private void button1_Click(object sender, EventArgs e)
{
mole.Smacked(0);
}
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
level = (int)numericUpDown1.Value;
}
残りのボタンハンドラは、ポストを短くするために省略されています。また、私はモルモットを投稿していません。なぜなら、私のポーズステートメントはどこに行かなければならないのかと思うからです。もちろん私は間違っている可能性があります。
私は間違いなく戻ってコントロールを無効にする必要がありますが、ポーズは私が立ち往生しているものです。だから私がトグル・モル()を呼び出すためのスタート・ボタンを組み込んだ場合、このようなものが行く方法だろうと思いますか?今私はそれについて考える、私はそれに答えることができます...それを試してください..それは動作しない場合は、他の何かを考える。 hehe –
多分あなたはこれを逃した。わからない。しかし、私はメッセージボックスを使用してユーザー入力を受け取ることができることを発見しました。ウワラ!ユーザー入力のために一時停止する勝利アプリ、私は毎日何かを学んでいます。 –
はい、入力のためのモーダルダイアログボックスを表示する別の方法です。 –