Schließen des MainWindows über x abfangen

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
sgremm
User
Beiträge: 10
Registriert: Mittwoch 17. Oktober 2007, 14:01

Schließen des MainWindows über x abfangen

Beitragvon sgremm » Sonntag 21. Oktober 2007, 12:41

Der Titel ist schrott, ich versuche mal zu erklären was ich machen will und was dann passiert.

Ich möchte, wenn man auf das x im MainWindow klickt um das Fenster zu schließen, das das Programm ins Systemtray geht und wenn auf das Icon im Systemtray geklickt wird das Programm wieder hergestellt wird.

Es klappt auch bis auf das Herstellen, dann wird das MainWindow wieder hergestellt aber nicht die Widgets im Mainwindow, was heisst, ich habe ein leeres Fenster.

Nun zum Code:

Hier fange ich den event ab.

Code: Alles auswählen

self.mainWindow.connect('delete-event',self.on_delete_mainWindow)


hier der Callback:

Code: Alles auswählen

   def on_delete_mainWindow(self,*args):
      self.mainWindow.hide_all()
      self.mainWindowHide = True

Dann der Klick auf das system_icon:

Code: Alles auswählen

   def on_icon_click(self, *args):
      if self.mainWindowHide == True:
         self.mainWindow.show_all()
         self.mainWindowHide = False
      else:
         self.mainWindow.hide_all()
         self.mainWindowHide = True

Ich hoffe ich habe es gut erklärt. Kann mir da jemand helfen, damit das Fenster wieder komplett hergestellt wird.

Mfg.

Stefan
Benutzeravatar
Trundle
User
Beiträge: 591
Registriert: Dienstag 3. Juli 2007, 16:45

Beitragvon Trundle » Sonntag 21. Oktober 2007, 13:18

Der delete-event-Handler sollte True zurückgeben, damit gtk das Fenster nicht löscht.
sgremm
User
Beiträge: 10
Registriert: Mittwoch 17. Oktober 2007, 14:01

Beitragvon sgremm » Sonntag 21. Oktober 2007, 13:31

Vielen Dank Trundle, das war der Fehler.

Mfg.

Stefan

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder