delphi..неактивная кнопка отключить путаницу для доступной формы - PullRequest
0 голосов
/ 29 декабря 2011

эй, я работаю над Delphi 7, и у меня есть сценарий для доступной формы, у меня есть две формы

  1. FormOne 
  2. FormTwo

У FormOne есть кнопка

enter image description here

, которые создают FormTwo при нажатии кнопки

    var
     Form2:TForm2;
      begin
       Form2:=TForm2.Create(nil);
       Form2.ShowModal ;
        Form2.Free;
     end;

Вкл. Form2 есть кнопка, которую мне нужно отключить .. (при некоторых условиях) .. enter image description here

и так далее активировать из Form2 я сделал это

       if assigned(Form2) then
        begin
         Form2.Button1.Enabled:=False;
        end;

, то есть я проверяю, создана ли форма, затем отключите кнопку ..., так как коднаходится в Onactivate означает, что form2 уже создана в соответствии с this delphi form liyfe cyle:

OnCreate -> OnShow -> OnActivate -> OnPaint -> OnResize -> OnPaint

.. поэтому кнопка 1 должна быть отключена ... но НЕ отключена.

enter image description here

1 Ответ

1 голос
/ 29 декабря 2011

Я думаю, Form2 - это локальная переменная в вашем обработчике нажатий кнопок; в вашем обработчике OnActivate вы тестируете глобальную переменную Form2 из модуля, где определено TForm2; вторая не присваивается, если TForm2 не является автоматически созданной формой.

...