menuitem enablen b.z.w disablen

Plattformunabhängige GUIs mit wxWidgets.
Antworten
Gerhard
User
Beiträge: 4
Registriert: Montag 11. Februar 2019, 13:57
Wohnort: Oldenburg in Holstein

Montag 11. Februar 2019, 14:12

Hallo,
wie kann ich aus einer Funktion einen / mehrere Menüpunkt/e disablen bzw. enablen.

Hier mein Code:

import wx


class Example(wx.Frame):

def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)

self.InitUI()

def InitUI(self):

menubar = wx.MenuBar()
fileMenu = wx.Menu()
fileItem1 = fileMenu.Append(100, 'choice 1', 'choice 1')
fileItem2 = fileMenu.Append(101, 'choice 2', 'choice 2')
menubar.Append(fileMenu, '&File')
self.SetMenuBar(menubar)

self.Bind(wx.EVT_MENU, self.OnQuit, fileItem1)

self.SetSize((600, 400))
self.SetTitle('Simple menu')
self.Centre()

def OnQuit(self, event):
# wie kann ich hier einen / mehrere Menüpunkt/e disablen bzw. enablen ?
print("-----")


def main():

app = wx.App()
ex = Example(None)
ex.Show()
app.MainLoop()


if __name__ == '__main__':
main()
Benutzeravatar
__blackjack__
User
Beiträge: 2270
Registriert: Samstag 2. Juni 2018, 10:21

Montag 11. Februar 2019, 16:33

@Gerhard: `wx.Menu.Append()` gibt ein `wx.MenuItem`-Objekt zurück, und die haben eine `Enable()`-Methode mit der man das Menu-Item (de)aktivieren kann.
»I'm not going to ride on a magic carpet!« he hissed.
»I'm afraid of grounds!«
»You mean heights,« said Conina. »And stop being silly.«
»I know what I mean! It's the grounds that kill you!« — Terry Pratchett, Sourcery
Gerhard
User
Beiträge: 4
Registriert: Montag 11. Februar 2019, 13:57
Wohnort: Oldenburg in Holstein

Dienstag 12. Februar 2019, 07:21

@_blackjack_ Vielen Dank für deine Antwort,

klappt nun alles mit meinem Menü.
Antworten