Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Opendialog bringt die Form zum Verschwinden (https://www.delphipraxis.net/188984-opendialog-bringt-die-form-zum-verschwinden.html)

Bjoerk 24. Apr 2016 09:35

Opendialog bringt die Form zum Verschwinden
 
Ich habe eine Form die modal aufgerufen wird. Dort wird per Speedbutton ein Opnedialog aufgerifen. Der Opendialog bringt die Form zum Verschwinden. Darüber hinaus bleibt auch ein ActiveControl ohne Wirkung. An was kann das denn liegen?

Delphi-Quellcode:
procedure TStartForm.FileOpenSpeedButtonClick(Sender: TObject);
begin
  if OpenDialog.Execute then // -> Form Weg
  begin
    FFileName := OpenDialog.FileName
    Close; // OK.
  end;
end;

procedure TStartForm.FormActivate(Sender: TObject);
begin
  if FLastFiles.Count > 0 then
    AbrufenListBox.ItemIndex := 0;
  ActiveControl := AbrufenListBox;
end;

Luckie 24. Apr 2016 09:50

AW: Opendialog bringt die Form zum Verschwinden
 
Das Close bezieht sich doch auf die Form oder nicht? Und auch wenn es das nicht tut, ist es bei einem OpenDialog überflüssig.

Daniel 24. Apr 2016 09:53

AW: Opendialog bringt die Form zum Verschwinden
 
Die Execute-Funktion verfügt über einen optionalen Parameter, in dem Du das Handle Deines Fensters übergeben kannst. Dadurch wird die korrekte Reihenfolge sichergestellt.

Bjoerk 24. Apr 2016 10:11

AW: Opendialog bringt die Form zum Verschwinden
 
Das Close wird doch nur ausgeführt wenn OpenDialog.Execute true ist. Und das soll es (hier) auch. Das Handle funktioniert. Thanx! Was ist noch mit dem ActiveControl. Wieso hat die Listbox den Fokus denn nicht? Kapier ich nich..

Luckie 24. Apr 2016 11:00

AW: Opendialog bringt die Form zum Verschwinden
 
Ah. Denkfehler von mir. Alles gut.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz