Seite 1 von 1

möchte 'Value' von 'textCtrl' erhalten

Verfasst: Dienstag 8. September 2009, 11:18
von Spleen
Hey Leute,

ich habe ein Frame in welches verschiedene Suchkriterien eingetragen werden. Wenn ich aber von einem anderem Frame diese Kriterien abfragen möchte, so bekomme ich nur die standartisierten leeren Values. Selbst wenn in den textCtrl-Feldern andere Werte stehen.

Frame mit den Suchkriterien:

Code: Alles auswählen

class Frame_Suchen(wx.Frame):
    def _init_ctrls(self, prnt):
        # generated method, don't edit
        wx.Frame.__init__(self, id=wxID_FRAME_SUCHEN, name='Frame_Suchen',
              parent=prnt, pos=wx.Point(325, 605), size=wx.Size(1024, 345),
              style=wx.DEFAULT_FRAME_STYLE, title='Suchen')

        self.textCtrl_Titel = wx.TextCtrl(id=wxID_FRAME_SUCHENTEXTCTRL_TITEL,
              name='textCtrl_Titel', parent=self.panel_Aendern, pos=wx.Point(90,
              115), size=wx.Size(438, 21), style=0, value='')

    def get_suchkriterien(self):
        suchkriterien = []
        titel = self.textCtrl_Titel.Value
        suchkriterien.append(titel)
        return suchkriterien
Frame um Suchkriterien abzufragen:

Code: Alles auswählen

a = FilmarchivFrame4.Frame_Suchen(self)
suchkriterien = a.get_suchkriterien()
Was mache ich in dem Moment falsch? Habe schon mit .Value und mit .GetValues() versucht den Wert des Titels zu bekommen. Aber wie gesagt - egal was ich ins textCtrl-Feld eintrage, erhalten tu ich nur einen leeren String.

Danke schon mal im Voraus

Verfasst: Dienstag 8. September 2009, 11:25
von BlackJack
@Spleen: Wann rufst Du denn `get_suchkriterien()` auf? Doch hoffentlich erst nachdem man da etwas eingetragen und zum Beispiel auf eine Schaltfläche geklickt hat!?

Verfasst: Dienstag 8. September 2009, 11:30
von Spleen
Ja klar ;)
get_suchkriterien wird aufgerufen nachdem ins textCtrl-Feld etwas eingetragen wurde und nachdem auch auf ein Button in dem FilmarchivFrame4 gecklickt wurde - dadurch wird auch ein EVT_BUTTON ausgelöst.

Verfasst: Dienstag 8. September 2009, 12:32
von Mawilo
Versuch es mal in der Zeile 15 mit

Code: Alles auswählen

titel = self.textCtrl_Titel.GetValue()

Verfasst: Dienstag 8. September 2009, 12:39
von Spleen
Hatte ich schon probiert, es funktioniert nicht. Obwohl es auch meinem Verständnis nach so gehen müsste.

Verfasst: Dienstag 8. September 2009, 12:47
von Mawilo
Du schreibst aber, dass Du schon GetValues() probiert hast. Für TextCtrl werden die Werte mit GetValue() (ohne "s") ausgegeben.

Verfasst: Dienstag 8. September 2009, 14:18
von Spleen
Hatte mich oben verschrieben. Gemeint war GetValue()

Verfasst: Dienstag 8. September 2009, 18:49
von Francesco
Spleen hat geschrieben:Hatte mich oben verschrieben. Gemeint war GetValue()
als Parent für dein TextControl hast du (self.panel_Aendern ) angegeben? Wo ist das? Was ist das für eine Klasse? Sieht so aus, als würdest du frame (also in diesem Fall self) als parent meinen(?)