delphi..неактивная кнопка отключить путаницу для доступной формы
Эй, я работаю над Delphi 7, и у меня есть сценарий для доступной формы, у меня есть две формы
1. FormOne
2. FormTwo
У FormOne есть кнопка
которые создают FormTwo по нажатию кнопки
var
Form2:TForm2;
begin
Form2:=TForm2.Create(nil);
Form2.ShowModal ;
Form2.Free;
end;
На Form2 есть кнопка, которую мне нужно отключить..(при некоторых условиях)..
так при активации Form2 я сделал это
if assigned(Form2) then
begin
Form2.Button1.Enabled:=False;
end;
то есть я проверяю, создана ли форма, затем отключите кнопку.., так как код находится в состоянии Onactivate, то есть форма2 уже создана в соответствии с этим, delphi form liyfe cyle
OnCreate -> OnShow -> OnActivate -> OnPaint -> OnResize -> OnPaint
... так что кнопка 1 должна быть отключена... но она НЕ отключена.
1 ответ
Похоже Form2
является локальной переменной в вашем обработчике нажатий кнопок; в вашем OnActivate
Обработчик ваш тестирует глобальный Form2
переменная из единицы, где TForm2
определено; второй не назначается, если TForm2
не является автоматически созданной формой.