Einzelnen Beitrag anzeigen

Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#4

Re: Datei bei Programmstart laden, nachdem form sichtbar ist

  Alt 21. Mai 2007, 15:01
Zitat von Bernhard Geyer:
Im onShow nochmal eine (eigenes definiert) Windows-Message schicken oder einen Timer starten.
Das mit dem timer wollte ich eigentlich vermeiden...das mit der Nachricht im OnShow klappt auch nicht (Task-button vorhanden, aber form noch nicht sichtbar):

Delphi-Quellcode:
const
  WM_LoadFile=WM_USER+10;

type
  TForm_DFMMain = class(TForm)
...
  private
    { Private-Deklarationen }
    FileToLoad:string;
    Procedure WMLoadFile(Var Msg: TMessage); message WM_LoadFile;
...
  end;

procedure TForm_DFMMain.FormCreate(Sender: TObject);
begin
  if (paramCount>0) then
  begin
    if fileExists(ParamStr(paramCount)) then
      FileToLoad:=ParamStr(paramCount);
  end;
end;

Procedure TForm_DFMMain.WMLoadFile(Var Msg: TMessage);
begin
  LoadDFMFile(FileToLoad);
  FileToLoad:='';
end;

procedure TForm_DFMMain.FormShow(Sender: TObject);
begin
  if FileToLoad<>'then
  begin
    SendMessage(self.handle,WM_LoadFile,0,0);
  end;
end;
bei Luckies Vorschlag wird das form zwar angezeigt, ist aber noch nicht fertig dargestellt (komponenten sind noch nicht gezeichnet).

Gruß Frank
  Mit Zitat antworten Zitat