Radio Item im Menü aus-/abwählen

Plattformunabhängige GUIs mit wxWidgets.
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

Radio Item im Menü aus-/abwählen

Beitragvon Buell » Donnerstag 2. März 2006, 14:19

Hallo,

noch ne Frage von mir:

Ich habe in einem MDI fenster in der MenuBar ein Menü indem sich Radio Items (wx.ITEM_RADIO) befinden:

Code: Alles auswählen

        menu_module = wx.Menu()
        i = 0
        for item in self.modules:
            menu_module.Append(self.ID_Module[i], item, kind=wx.ITEM_RADIO)
            i += 1
        menu_module.AppendSeparator()
        menu_module.Append(ID_Exit, "E&xit")
        menubar = wx.MenuBar()
        menubar.Append(menu_module, "&Modules")


Die for-Schleife ergibt eine Liste von 3 Radio Items. Nun möchte ich im nachhinein festlegen (während des Programmablaufes) welcher Radio Item ausgewählt ist, ohne das Menü zu benutzen. Also falls etwas geändert wurde, soll beim nächsten Öffnen des Menüs der "richtige" Item gewählt sein.

Ich denke mal es gibt da bestimmt so etwas in der Art wie:

self.ID_Module[2].selected oder so, finde aber leider gerade nicht das richtige...

...da weiß doch bestimmt einer genau das richitige...
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

Beitragvon Buell » Donnerstag 2. März 2006, 14:54

also bin der Sache schon etwas näher gekommen, aber noch nicht gelöst:

ich kann natürlich nicht einfach auf die Variable zugreifen, sondern muss das gesamte Menü ansprechen:

item = self.GetMenuBar().FindItemById(id)

dann sollte so etwas in der Art folgen wie:

item.SetSelected(True) oder so ähnlich, aber was genau ... bis jetzt leider noch nix gefunden
Francesco
User
Beiträge: 824
Registriert: Mittwoch 1. Dezember 2004, 12:35
Wohnort: Upper Austria

Beitragvon Francesco » Donnerstag 2. März 2006, 15:13

Buell hat geschrieben:also bin der Sache schon etwas näher gekommen, aber noch nicht gelöst:

ich kann natürlich nicht einfach auf die Variable zugreifen, sondern muss das gesamte Menü ansprechen:

item = self.GetMenuBar().FindItemById(id)

dann sollte so etwas in der Art folgen wie:

item.SetSelected(True) oder so ähnlich, aber was genau ... bis jetzt leider noch nix gefunden


Es gibt die Methode Check() in sowohl in wx.Menu als auch in wx.MenuItem.
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

Beitragvon Buell » Donnerstag 2. März 2006, 16:43

Erstmal vielen Dank dir mal wieder!

mit Check gibt es zumindest keine Fehlermeldung nur ändert sich noch nix. Das kann natürlich auch an was anderem liegen. Ich werde das mal erforschen.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder