mały problem z pyGtk + glade

0

Witam piszę w pythonie od niedawna. Obecnie tworzę mały program na zaliczenie kursu i napotkałem na problem którego nie umiem rozwikłać. Sprawa przedstawia się następująco. Zbudowałem w glade wygląd okna głównego programu z jednym przyciskiem i chcę żeby on uruchamiał drugie okno w ktorym z kolei są 3 przyciski. Sęk w tym że jak zamknę to drugie okno 'krzyżykiem' i ponownie wcisnę guzik w głównym oknie który je wywołuje, to w nim juz nie ma żadnej zawartości. Dla próby podpiąłem pod jeden z 3 guzików tego drugiego okna akcję zamykania okna i w tym przypadku wszystko działa prawidłowo... nie wiem dlaczego tak się dzieje... będe wdzięczny za pomoc.

import gtk.glade
 
class GUI:
    def __init__(self):
        self.gladefile = gtk.glade.XML('interface.glade')
 
        self.window1 = self.gladefile.get_widget('window1')
        self.window2 = self.gladefile.get_widget('window2')
 
        self.actions = {"on_window1_destroy":lambda c: gtk.main_quit(),
                        "on_button1_clicked":lambda n: self.window2.show(),
                        "on_window2_destroy":lambda w: self.window2.hide(),
                        "on_button2_clicked":lambda g: self.window2.hide(),
                        }
 
        self.gladefile.signal_autoconnect(self.actions)
 
        self.window1.show()
 
 
interface = GUI()
gtk.main()

window1 - okno główne
button1 - guzik wywołujący okno 2
window2 - okno 2
button2 - guzik ustawiony na próbę ktory jak wcisnę, okno znika i jak je wywołam ponownie to wszystko jest jak trzeba.

Python 2.7 / glade 3.8

plik glade: http://dl.dropbox.com/u/18401441/interface.glade

0

Szkoda że nikt mi nie pomógł, no ale problem rozwiązany. Wystarczy użyć zdarzenia delete-event aby nie usunąć obiektu okna.
Pozdrawiam

1 użytkowników online, w tym zalogowanych: 0, gości: 1