bedingt durch einen anderen Thread bin ich auf eine Merkwürdigkeit gestossen,
vielleicht liegt das Problem aber bei mir, deshalb wollte ich es nicht in den Bug Thread schreiben,
sondern erstmal hier zur Diskussion stellen:
Die linke Position eines Formulars TForm.left ist -8 wenn sich das Fenster ganz links am Bildschirm befindet.
Das lässt sich ganz leicht ausprobieren:
Einfach Lazarus öffnen und das Standard Formular welches erscheint nehmnen und den linken Rand nach ganz links vom Bildschirm schieben.
Im Objektinspektor den Eintrag "left" beobachten.
Oder einfach mal den Wert left im Objektinspektor auf 0 setzen,
das Fenster ist dann 8 Pixel zu weit rechts.
Nächster Versuch: zur Laufzeit
Ich habe dann WindowState auf wsMaximized gesetzt, das funktioniert auch einwandfrei, Fenster hat volle Größe
doch folgende Aktion zeigt mir dass Left nun auf -8 steht
Code: Alles auswählen
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
caption:=IntToStr(Form1.left); // ist -8
end;
Ich hab das mit 2 verschiedenen Lazarus Versionen probiert:
Mein Betriebssystem ist Windows 10, 64 Bit.
Lazarus 1.8.4
Lazarus 2.0.4
Siro