Hi,
ich habe eine Form, die ich vor dem Show an einem Speedbutton ausrichten möchte.
Mit folgendem Aufruf:
Delphi-Quellcode:
procedure Tfrm_licenseorder.btn_amClick(Sender: TObject);
var
pt: TPoint;
begin
frm_modulinfo.mmo1.Lines.Clear;
frm_modulinfo.mmo1.Lines.Text:='blablabla';
pt.x:=(Sender as TSpeedButton).Left;
pt.y:=(Sender as TSpeedButton).Top;
pt:=grp_module.ClientToScreen(pt);
frm_modulinfo.Left:=pt.x-frm_modulinfo.Width-4;
frm_modulinfo.Top:=pt.y+6;
frm_modulinfo.Show;
end;
Leider erscheint die Form beim ersten Klick auf den SpeedButton an ihrer Position, die sie zur Entwurfzeit hat. Erst wenn ich sie schließe, und mit dem gleichen Button erneut öffne, dann ist sie genau da wo ich sie haben möchte. Danach funktioniert alles wie es soll.
Bis ich das Prog neu startet, dann ist es wieder beim ersten Klick falsch.
Wo mache ich den Fehler?