Я делаю стек, у меня есть поле ввода, каждый раз, когда я ввожу число, это число вставляется в стек и отображается в метке, я продолжаю добавлять числа и метки, затем, когда я выталкиваю число,последний созданный ярлык (представляющий стек) должен исчезнуть и так далее до тех пор, пока стек не станет пустым.
Короче говоря, я добавляю число в стек, создается ярлык, выскакиваю число, соответствующий ярлыкисчезает.
Моя проблема в том, что всякий раз, когда я продолжаю выскакивать номера, единственные ярлыки, которые исчезают, это последние, остальные не исчезают.
8 7 6 5 4 3 2 1
I pop 8 7 6 5 ... и единственный ярлык, который исчезает - последний, номер 8
7 6 5 4 32 1
Вот код, в котором я создаю метки
if (token != "+" && token != "-" && token != "*" && token != "/")
{
problem.push(Convert.ToDouble(token));
lstbxStack.Items.Add("Pushed: " + token);
MessageBox.Show("Pushed: " + token);
lblPush = new Label();
lblPush.BorderStyle = BorderStyle.Fixed3D;
lblPush.Location = new Point(290, labelY);
lblPush.Name = "lblPush";
lblPush.Size = new Size(100, 20);
lblPush.Text = token;
Controls.Add(lblPush);
lblPush.BringToFront();
labelY -= 21;
}
А вот где я прячу метки
operand2 = problem.pop();
.
.
lblPush.Hide();
operand1 = problem.pop();
.
.
lblPush.Hide();
Это внутри for
петля и switch
чехлы
спасибо