Seite 1 von 1

Kreuz Knopf am Fenster deaktivieren

Verfasst: Freitag 16. Januar 2009, 17:38
von gugugs
An Knöpfe, kann man ja mit dem befehl "set_sensitive(False)" die Knöpfe deaktivieren, beziehungsweise graus werden lassen, wie kann ich das genau in dem Stil mit einem Schließen Kreuz in einem Fenster machen?

Verfasst: Freitag 16. Januar 2009, 19:03
von Trundle
``window.set_deletable(False)``. Das kann, muss aber nicht unbedingt funktionieren und ist sehr stark von der Umgebung abhängig, in der das Programm ausgeführt wird.

Verfasst: Freitag 16. Januar 2009, 19:12
von gugugs
Hm, also bei mir funktioniert es nicht... Ich benutze Linux, falls das von Bedeutung ist. Habe schon Programme gesehen, wo das Kreuz da oben auch so Grau also nicht klickbar ist. Geht das nicht so? Beziehungsweise an was liegt es, dass dieser Befehl bei mir überhaupt nicht geht?

Verfasst: Freitag 16. Januar 2009, 19:48
von Leonidas
gugugs hat geschrieben:Beziehungsweise an was liegt es, dass dieser Befehl bei mir überhaupt nicht geht?
Am Windowmanager. Der zeichnet die Fensterdekorationen zu denen auch die Titelleiste gehört und dem steht es frei die Titelleiste wie er will zu machen. Er kann zum Beispiel gar keine solche Leiste bereitstellen, wie das viele Tiling-Manager machen oder 25 Buttons reinsetzen. Somit kann die Applikation den WM nur bitten das so zu machen, aber wie der WM das dann letztendlich macht bleibt ihm überlassen.

Re: Kreuz Knopf am Fenster deaktivieren

Verfasst: Freitag 16. Januar 2009, 20:59
von numerix
gugugs hat geschrieben:An Knöpfe, kann man ja mit dem befehl "set_sensitive(False)" die Knöpfe deaktivieren, beziehungsweise graus werden lassen, wie kann ich das genau in dem Stil mit einem Schließen Kreuz in einem Fenster machen?
Ich vermute mal, dass es dir letztlich weniger darum geht, dass du das Kreuz in grau sehen kannst, sondern vielmehr darum, dass das Fenster sich beim Klick darauf nicht schließt. Dann sollte man vielleicht dort ansetzen und das close-/destroy-Event abfangen - ich gehe mal davon aus, dass so etwas mit gtk möglich ist (leider verstehe ich nichts von gtk).

Das folgende Beispiel sollte helfen: http://docs.huihoo.com/pygtk/2.0-tutori ... eaction.py

Edit: Hier steht, wie es geht: http://www.pygtk.org/pygtk2tutorial/ch- ... HelloWorld

Re: Kreuz Knopf am Fenster deaktivieren

Verfasst: Freitag 16. Januar 2009, 22:15
von Leonidas
numerix hat geschrieben:Ich vermute mal, dass es dir letztlich weniger darum geht, dass du das Kreuz in grau sehen kannst, sondern vielmehr darum, dass das Fenster sich beim Klick darauf nicht schließt. Dann sollte man vielleicht dort ansetzen und das close-/destroy-Event abfangen - ich gehe mal davon aus, dass so etwas mit gtk möglich ist (leider verstehe ich nichts von gtk).
Das ist Standardverhalten von GTK. Wenn du ``delete_event`` nicht abfängst, geht das Fenster gar nicht erst zu, obwohl der "Schließen"-Button in der Titelleiste durchaus da ist.

Verfasst: Freitag 16. Januar 2009, 23:07
von gugugs
Ja ich weiß, das ist auch kein Problem mit dem Abfangen, hätte das Kreuz halt gerne schön grau gehabt :wink:

Hätte gedacht, dass das nicht so ein Problem ist, denn bei den Knöpfen ging es ja auch nicht so schwer. Aber wenn das alles so ist, werde ich den Knopf wohl so deaktivieren müssen.

Trotzdem Danke