Form BorderStyle ohne "Schließen" RundButton
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Form BorderStyle ohne "Schließen" RundButton
Hallo,
um ein Form ohne Icons fester Größe zu erstellen habe ich unter Windows einfach bsSingle ausgewählt und die BorderIcons deaktiviert
und schon hatte ich ein Form fester Größe und ohne Icons min,max,schließen.
Unter Debian KDE gelingt es mir nicht das Schließen Icon aus der Kopfzeile zu entfernen.
Wie komme ich zu Ziel ?
Gruß Frank
um ein Form ohne Icons fester Größe zu erstellen habe ich unter Windows einfach bsSingle ausgewählt und die BorderIcons deaktiviert
und schon hatte ich ein Form fester Größe und ohne Icons min,max,schließen.
Unter Debian KDE gelingt es mir nicht das Schließen Icon aus der Kopfzeile zu entfernen.
Wie komme ich zu Ziel ?
Gruß Frank
Re: Form BorderStyle ohne "Schließen" RundButton
Da bewegt man sich im Bereich der Linux Fenstermanager und die bestimmen, was geht und was nicht.
Du kannst bsNone einstellen, dann kommt aber gar nichts mehr, außer das blanke Window.
Du kannst bsNone einstellen, dann kommt aber gar nichts mehr, außer das blanke Window.
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Re: Form BorderStyle ohne "Schließen" RundButton
Hallo theo,
ja, dass scheint leider so zu sein - habe nun eine andere Lösung für mein spezifisches Problem gefunden.
ja, dass scheint leider so zu sein - habe nun eine andere Lösung für mein spezifisches Problem gefunden.
Re: Form BorderStyle ohne "Schließen" RundButton
kenne ich das Problem
Damit verhinderst du ein Schließen. Den Button oben rechts verhindert dies natürlich nicht, nur er ist dadurch ohne Funktion.

Code: Alles auswählen
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
abort;
end;
Gruß, Michael
-
- Beiträge: 2149
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Re: Form BorderStyle ohne "Schließen" RundButton
Wenn sollte man schon die CloseAction benutzen, dafür ist die ja da. Eine Stille Exception zu werfen ist extrem unsaubersix1 hat geschrieben:kenne ich das Problem![]()
Damit verhinderst du ein Schließen. Den Button oben rechts verhindert dies natürlich nicht, nur er ist dadurch ohne Funktion.
Code: Alles auswählen
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
CloseAction := caNone;
end;
-
- Beiträge: 478
- Registriert: Fr 13. Sep 2013, 12:07
- OS, Lazarus, FPC: Debian Bullseye (L 2.2.0)
- CPU-Target: 64Bit
- Wohnort: Rügen
Re: Form BorderStyle ohne "Schließen" RundButton
Hallo Warf,
hmm gut der Runde Btn re oben ist nun ohne Funktion - wie kann ich nun programmtechnisch das Form schließen ?
hmm gut der Runde Btn re oben ist nun ohne Funktion - wie kann ich nun programmtechnisch das Form schließen ?
Re: Form BorderStyle ohne "Schließen" RundButton
Was ist denn das Problem, wenn der Schließen-Button in der Titelzeile vorhanden ist? Das ist ein allgemein übliches Element einer graphischen Benutzeroberflächen. Wenn das fehlt, werden die User vor den Kopf gestoßen.
Re: Form BorderStyle ohne "Schließen" RundButton
Eigentlich ist dafür auch OnCloseQuery gedacht. Dort kann man CanClose auf False setzen.
-
- Beiträge: 2149
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Re: Form BorderStyle ohne "Schließen" RundButton
Du kannst z.B. nen boolean setzen, der beim FormShow auf false gesetzt wird, und wenn du programatisch schließen willst auf True, dann hast du sowas:DL3AD hat geschrieben:Hallo Warf,
hmm gut der Runde Btn re oben ist nun ohne Funktion - wie kann ich nun programmtechnisch das Form schließen ?
Code: Alles auswählen
procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
if FCanClose then
CloseAction := caFree // oder caHide, wenn man die Form nochmal braucht
else
CloseAction := caNone;
end;