ich probiere mich heute ein wenig an gtk - ich habe mir mal einiges an Tutorial durchgelesen und ein paar kleine Beispielprogramme angeschaut. Nun dachte ich ich könnte mal mit einem kleinen Script anfangen. Aber ich fürchte ich mache noch einige Anfängerfehler - Momentan hänge ich beim gtk.FileChooserDialog. Ich habe im Netz ein kleines snipped gefunden das auch so läuft:
Code: Alles auswählen
import gtk
dlg = gtk.FileChooserDialog(title='script suchen',
action=gtk.FILE_CHOOSER_ACTION_OPEN,
buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT,
gtk.STOCK_OK, gtk.RESPONSE_OK))
result = dlg.run()
print result
print dlg.get_filename()
Code: Alles auswählen
class MyGUI(object):
def __init__(self):
self.builder = gtk.Builder()
self.builder.add_from_file('GUI.glade')
self.builder.connect_signals(self)
self.win = self.builder.get_object('window1')
def run(self):
gtk.main()
def quit(self):
gtk.main_quit()
def on_window1_delete_event(self, *args):
self.quit()
def on_button1_clicked(self, *args):
dlg = gtk.FileChooserDialog(title='script suchen',
action=gtk.FILE_CHOOSER_ACTION_OPEN,
buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT,
gtk.STOCK_OK, gtk.RESPONSE_OK))
dlg.set_default_response(gtk.RESPONSE_OK)
result = dlg.run()
print result
print dlg.get_filename()
Wenn ich allerdings die gesamte Methode ``on_button1_clicked`` in eine Funktion ausserhalb der Klasse ``MyGUI`` auslagere ist wieder alles in Ordnung und der Dialog funktionert wie gewohnt.
Ich bin ein wenig verwirrt - was mache ich hier falsch?