TForm beim Aufruf auf ganzem Bildschirm anzeigen
-
- Beiträge: 88
- Registriert: Sa 18. Jan 2020, 09:56
- OS, Lazarus, FPC: Winux (L 2.2.0 FPC 3.2.2)
- CPU-Target: Windows 64-Bit
TForm beim Aufruf auf ganzem Bildschirm anzeigen
Hallo,
ich versuche ein TForm, mit einigen Frames, beim Start des Programmens auf den ganzen Bildschirm zu dehnen, aber es geht nicht. In Delphi funktioniert es auf 'OnActivate' mit Form1.Align := alClient; In Lazarus bekomme ich es jedoch nicht hin. Bitte um Hilfe.
Gruß, Luckner
ich versuche ein TForm, mit einigen Frames, beim Start des Programmens auf den ganzen Bildschirm zu dehnen, aber es geht nicht. In Delphi funktioniert es auf 'OnActivate' mit Form1.Align := alClient; In Lazarus bekomme ich es jedoch nicht hin. Bitte um Hilfe.
Gruß, Luckner
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Ich weiss nicht genau was du meinst, aber normalerweise ist die Eigenschaft "WindowState" (wsMaximized) dafür zuständig.
-
- Beiträge: 758
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
so geht es bei mir:
Siro
Code: Alles auswählen
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.WindowState:=wsMaximized;
end;
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
-
- Beiträge: 88
- Registriert: Sa 18. Jan 2020, 09:56
- OS, Lazarus, FPC: Winux (L 2.2.0 FPC 3.2.2)
- CPU-Target: Windows 64-Bit
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Vielen Dank,
das war es. Hätte nicht gedacht, dass die Hilfe fast sofort und am Sonntag erfolgt.
Gruß, Luckner
das war es. Hätte nicht gedacht, dass die Hilfe fast sofort und am Sonntag erfolgt.
Gruß, Luckner
-
- Beiträge: 758
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Beim experimentieren fällt mir grade auf: (ich wollte jetzt dafür keinen neuee Thrad aufmachen)
dass wsFullscreen das Fenster nicht auf den Bildschirm zentriert.
Die Breite und Höhe stimmt aber. So habe ich left auf 0 gesetzt und stelle fest:
Wenn ich Form1.left:=0 eingebe, egal ob zur Laufzeit oder in der Designphase, befindet sich das Fenster nicht am linken Bildschirmrand.
Wenn ich das Fenster mit der Maus an den Bildschirmrand schiebe, steht "left" auf -8.
Das gleiche passiert auch mit wsMaximized.
Danach steht left auf -8
Grad nochmal auf 3 verschiedenen Rechnern probiert.
Windows 10, 64 Bit
Lazarus 3.04
Siro
dass wsFullscreen das Fenster nicht auf den Bildschirm zentriert.
Die Breite und Höhe stimmt aber. So habe ich left auf 0 gesetzt und stelle fest:
Wenn ich Form1.left:=0 eingebe, egal ob zur Laufzeit oder in der Designphase, befindet sich das Fenster nicht am linken Bildschirmrand.
Wenn ich das Fenster mit der Maus an den Bildschirmrand schiebe, steht "left" auf -8.
Das gleiche passiert auch mit wsMaximized.
Danach steht left auf -8
Grad nochmal auf 3 verschiedenen Rechnern probiert.
Windows 10, 64 Bit
Lazarus 3.04
Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Hi!
Object Inspector --> Form1 --> position: poScreenCenter
Winni
Object Inspector --> Form1 --> position: poScreenCenter
Winni
-
- Beiträge: 758
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Danke Winni für deine Antwort, funktioniert leider noch nicht:
nun habe ich folgende Zeilen in verschiedenen Methoden(Ereignissen) probiert:
Bei OnCreate geht es nicht
Bei OnShow geht es auch nicht
Bei FormActivate geht es auch nicht
Wenn ich es in FormClick packe und das Formular nach der Anzeige dann anklicke geht es.
Wo baut man das denn am besten ein ?
Siro
nun habe ich folgende Zeilen in verschiedenen Methoden(Ereignissen) probiert:
Code: Alles auswählen
Form1.Position :=poScreenCenter;
Form1.WindowState:=wsFullScreen;
Bei OnShow geht es auch nicht
Bei FormActivate geht es auch nicht
Wenn ich es in FormClick packe und das Formular nach der Anzeige dann anklicke geht es.
Wo baut man das denn am besten ein ?
Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
- Winni
- Beiträge: 1577
- Registriert: Mo 2. Mär 2009, 16:45
- OS, Lazarus, FPC: Laz2.2.2, fpc 3.2.2
- CPU-Target: 64Bit
- Wohnort: Fast Dänemark
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Object Inspector
-
- Beiträge: 758
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Im Objektinspektor war natürlich das Erste was ich probiert habe, aber das geht auch nicht...
Das Zusammenspiel mit wsFullScreen scheint problematisch, aber das braucht man ja nicht, ich wollt den Thread jetzt nicht zerreissen.
wsMaximized läuft ja,
Das Zusammenspiel mit wsFullScreen scheint problematisch, aber das braucht man ja nicht, ich wollt den Thread jetzt nicht zerreissen.
wsMaximized läuft ja,
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
- af0815
- Lazarusforum e. V.
- Beiträge: 6766
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Nur so eine Frage: was soll das Form1.xxx in den Events ?!
Entweder es genügt ein self. oder ein WindowsState := xxxx !! Was soll der Verweis auf Form1. ?
Bei mir geht es ohne Form1 in On Create oder OnActivate (abgesichert mit einer 'Init' Variablen, das es nicht laufend aufgerufen wird). Läuft sowohl unter win32, win64, Linux/arm und Linux/x64. Ich verwendet es aber immer innerhalb des Objektes.
Entweder es genügt ein self. oder ein WindowsState := xxxx !! Was soll der Verweis auf Form1. ?
Bei mir geht es ohne Form1 in On Create oder OnActivate (abgesichert mit einer 'Init' Variablen, das es nicht laufend aufgerufen wird). Läuft sowohl unter win32, win64, Linux/arm und Linux/x64. Ich verwendet es aber immer innerhalb des Objektes.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
-
- Beiträge: 758
- Registriert: Di 23. Aug 2016, 14:25
- OS, Lazarus, FPC: Windows 11
- CPU-Target: 64Bit
- Wohnort: Berlin
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Das kann man weglassen, muss man aber nicht.
Bei Problemen will ich lediglich sicher gehen, das auch die richtige Instanz benutzt wird,
weil ich auch gern Testroutinen außerhalb des Objekt implementiere.
Innerhalb des Objekt ist der Parameter self dabei, stimme ich Dir voll zu und da brauche ich es nicht.
Das ist so eine Angewohnheit von mir
Siro
Bei Problemen will ich lediglich sicher gehen, das auch die richtige Instanz benutzt wird,
weil ich auch gern Testroutinen außerhalb des Objekt implementiere.
Innerhalb des Objekt ist der Parameter self dabei, stimme ich Dir voll zu und da brauche ich es nicht.
Das ist so eine Angewohnheit von mir

Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...
- af0815
- Lazarusforum e. V.
- Beiträge: 6766
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: TForm beim Aufruf auf ganzem Bildschirm anzeigen
Die Instanz direkt zu refernzieren, kann nur in einem Desaster enden. Ich habe meist Formulare Dynamisch und da gibt es keine fix vorgegeben Instanz wie Form1 - Verwende ich die, reite ich SICHER auf einem totem Pferd.siro hat geschrieben:Das kann man weglassen, muss man aber nicht.
TForm1 würde ich noch verstehen, ist wie self. aber Form1 innerhalb der Definition von TForm1 ist ein NoGo. Un darauf läuft es hinauf, wenn du von OnActivate, OnCreate oder sonstigen sprichst.
Das ist NoGo !!!!!"!!siro hat geschrieben:so geht es bei mir:Code: Alles auswählen
procedure TForm1.FormCreate(Sender: TObject); begin Form1.WindowState:=wsMaximized; end;
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).