Я использую Delphi xe4 и пытается создать 2-ю форму и установить его в качестве фона в то время как первая форма прозрачна (AlphaBlend = истина; AlphaBlendValue = 220)Почему SendToBack не работает с Delphi xe4
uses Unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
Form2.SendToBack;
end;
Коды выше работают с Delphi 7, но не с Delphi XE4 (Form2 все еще на Form1). Может ли кто-нибудь сказать мне, почему коды не работают с XE4? И как заставить его работать?
Заранее спасибо.
Form2.PopoupParent свойство равно нулю (пусто) по умолчанию, и я не имею изменили. – user3251423
Если я установил Form1.PopupParent в Form2, то SendToBack работает (Form2 отправляет обратно Form1), но когда я закрываю приложение, возникает ошибка. использует Unit2; процедура TForm1.Button1Click (отправитель: TObject); начало Form2.Show; PopupParent: = Form2; Form2.SendToBack; конец; Я попытался установить PopupParent в NIL onClose событие Form1, но ошибка все еще происходит. процедура TForm1.FormClose (отправитель: TObject; var Действие: TCloseAction); начало PopupParent: = nil; конец; – user3251423
Извините, я имел в виду PopupMode, а не PopupParent (хотя они и связаны). Не устанавливайте Form2 как PopupParent Form1. Попробуйте установить PopupMode Form2 в явном виде, а PopupParent - на ноль. Если оставить значения по умолчанию, VCL может решить, какой PopupParent использовать, когда отображается Form2, и обычно это активная форма (Form1 в этом случае). –