В PascakABC.NET не работают кнопки

Пишу сапер на Паскале. Решил поставить "а" на рандом, чтобы выпадали подготовленные "сиды", которые я заранее сделаю из готовых материалов.

При нажатии на серую кнопку она должна выдавать подготовленный текст и исчезать (если скрывает мину), либо просто исчезать (если скрывает НЕ мину). Однако работает та кнопка, которая стоит первой в списке кнопок, вторая ей подобная функцию свою не выполняет.

program saper;
uses 
  GraphABC, ABCButtons;
var
  b1, b2, b3, b11, b22, b33, b44, b55, bg, bn: buttonABC;
  
    a:=1;
    
    //Для копирования цифры
    //"
  
  //b11 := new ButtonABC(50, 0, 50, 50, '1', clWhite); //цифра 1
  
  //b22 := new ButtonABC(50, 0, 50, 50, '2', clWhite); //цифра 2
  
  //b33 := new ButtonABC(50, 0, 50, 50, '3', clWhite); //цифра 3
  
  //b44 := new ButtonABC(50, 0, 50, 50, '4', clWhite); //цифра 4
  
  //b55 := new ButtonABC(50, 0, 50, 50, '5', clWhite); //цифра 5
  
  //"



procedure f();
begin
  Brush.Color := clWhite; 
  font.Color := clRed;
  font.Size := 20;
  TextOut(200, 200, 'Вы проиграли!');
  bg.OnClick := bg.destroy;
end;
 
 
 
procedure g();
begin
  bn.OnClick := bn.destroy;
end;



procedure d();
begin
  
end;






 begin
 if a=1 then
begin
  
  b11 := new ButtonABC(50, 0, 50, 50, '1', clWhite); //цифра 1
  
  b1 := new buttonABC(0, 0, 50, 50, 'M', clRed); //мина, просто стоит
  
  b1 := new buttonABC(100, 0, 50, 50, 'M', clRed); //мина, просто стоит
  
  b3 := new buttonABC(0, 50, 50, 50, ' ', clWhite); //пустое поле
  
  bg := new buttonABC(150, 150, 50, 50, ' ', clGray); //закрывает мину, при нажатии гейм овер
  
  bg := new buttonABC(0, 0, 50, 50, ' ', clGray); //закрывает мину, при нажатии гейм овер
  
  bn := new buttonABC(50, 100, 50, 50, ' ', clGray); //закрывает пустое поле или цифру
  
  bn := new buttonABC(50, 50, 50, 50, ' ', clGray); //закрывает пустое поле или цифру
  
  
  writeln(a)
 end;
 
 
 
 begin
   
  b3.OnClick := d;
  bn.OnClick := g;
  bg.OnClick := f;
 end;
end.

Ответы (0 шт):