Label1に値を入力するために、片側にテンキーを備えたWindowsフォームアプリケーションがあります。ユーザーが Enter ボタンを押すと、アプリケーションは値をスタックに「プッシュ」し、スタックを Label2 に表示する必要があります。アプリケーションが値を配列に格納し、スタックを画面に表示する部分で立ち往生しています。
Enter ボタンをクリックすると、次のコードが表示されます。
private void btnEnter_Click_1(object sender, EventArgs e)
{
ArrayStack Stack = new ArrayStack();
Stack.Push(label1, label2);
label1.Text = "0";
}
ArrayStack クラスには次のコードがあります。
public class ArrayStack
{
int[] StackArray = new int[10];
int Top = -1;
public Label Push(Label Label1, Label Label2)
{
StackArray[Top + 1] = Convert.ToInt32(Label1.Text);
Top = Top + 1;
for (int counter = 0; counter == Top + 1; counter++ )
{
int num = 10 - counter;
Label2.Text += "\r\n [" + num + "] " + StackArray[Top];
}
return Label2;
}
}
私がここで抱えている問題は、意図したように Label2 を埋めず、空のままにすることです。私は何を間違っていますか?