Hallo,
Ich habe ein kleines Problem. Ich möchte beim Start der Anwendung ein Sub-Fenster anzeigen. Ich möchte aber dass die Haupt-Form dann schon im Hintergrund zu sehen ist. Deswegen verwende ich ein WM_AfterShow -Event. Allerdings ist der Focus dann im Nirvana. Sobald ich Tab-Drücke ist der Focus auf der Komponente mit der TabOrder 1. Ich brauche den Focus aber auf der Komponente mit der Tab-Order 0 ohne dass ich dafür etwas drücken muss. Wo ist das Problem?
Delphi-Quellcode:
procedure TForm1.FormShow(Sender: TObject);
begin
PostMessage(self.handle, WM_AfterShow, 0,0); // Dadurch kommt das ShowMessage erst nachdem das MainForm sichtbar ist
end;
procedure TForm1.WMAfterShow(var Message: TWMChar);
begin
Form2.ShowModal;
end;
...
procedure TForm2.FormShow(Sender: TObject);
begin
Edit1.SetFocus; // Das bringt nichts. Der Focus ist nicht auf Edit1, wie ich es gerne hätte.
end;
Genieße jede Minute deines Lebens, denn sie wird nicht wieder kommen.