Manipulation von Variabel in fremdem Modul

Plattformunabhängige GUIs mit wxWidgets.
Antworten
Buzzy
User
Beiträge: 12
Registriert: Samstag 3. Juli 2004, 19:20

Hi!

Ich möchte aus einem Modul eine Variable in einem anderen verändern. Bei den Modulen handelt es sich um zwei wxPython-Frames wobei das Eine eine Klasse für das Hauptfenster beinhaltet, und das Andere ein Settingswindow. Von letzterem aus möchte ich ein Dictionary mit Einstellungen verändern. Das Settingswindow hat das Hauptfenster als parent.
Ich habe es schon über "parent.foo" probiert, allerdings lässt sich das Dictionary darüber nur in "__init__" verändern. Wenn ich in einer Eventhandlerfunktion versuche die Werte zu ändern, sagt Python mir, dass parent nicht definiert ist.

Für Vorschläge wäre ich sehr dankbar!

EDIT: Falls es besser nach Python GUI-Toolkits passt, bitte dorthin verschieben.
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi Buzzy,

hast Du parent auch als Attribut an den Frame zugewiesen?
Also in etwa folgendermassen:

Code: Alles auswählen

    def __init__(self, parent):
        self.parent = parent
        ... #weitere Initialisierungen
dann kannst Du in der Eventhandlermethode auf parent über self.parent zugreiffen.


Gruß

Dookie
Buzzy
User
Beiträge: 12
Registriert: Samstag 3. Juli 2004, 19:20

Hi Dookie!

Danke, das wars! Das Einfachste fällt einem natürlich nicht ein :oops:
Antworten