Seite 1 von 1

ContextMenu Check Item Enable?

Verfasst: Montag 28. Februar 2011, 10:03
von sabram
Hallo,

ich versuche momentan auf einem TreeView ein ContextMenu zu bauen.
Auf diesem Habe ich mehrere Items die auch alle wunderbar arbeiten.
Nun versuche ich allerdings zusätzlich ein Checkitem einzubauen. Welches wenn auf einem TreeElement aktiviert werden kann, nun sollte es natürlich bei allen anderen Tree Elementen ausgegraut werden.
Doch hier schimpft wx mit mir und sagt das ich auf einem CheckItem kein Enable aufrufen kann.

Gibt es eine möglichkeit das Irgendwie zu bauen?

Hier kurzer Ausschnitt

Code: Alles auswählen

self.browseID = wx.NewId()
self.copyPathID = wx.NewId()
self.breakID = wx.NewId()
self.setFinallyStepID = wx.NewId()

Code: Alles auswählen

...
self.TestStepsContextMenu.AppendSeparator()
self.TestStepsContextMenu.AppendItem(setBreakpointBefore)
self.TestStepsContextMenu.AppendItem(setBreakpointAfter)
self.TestStepsContextMenu.Enable(self.pasteID, False)
self.TestStepsContextMenu.AppendSeparator()
self.TestStepsContextMenu.AppendCheckItem(self.setFinallyStepID,"Set Finally Step")

Code: Alles auswählen

    def ShowContextMenu(self, item):
                    element = self.getTreeItemXMLElement(item)
                        self.TestStepsContextMenu.Enable(self.cutID, True)
                        #if self.getFinallyStepID(element.parent) != None:
                            #self.TestCasesContextMenu.Enable(self.setFinallyStepID, True)
                        #else:
                            #self.TestCasesContextMenu.Enable(self.setFinallyStepID, False)
in dem letzten auskommentierten Teil kommt der Fehler der wie folgt ausschaut
''PyAssertionError: C++ assertion "item" failed at ..\..\src\common\menucmn.cpp(830) in wxMenuBase::Enable(): wxMenu::Enable: no such item''

Vielleicht kann mir ja jemand helfen.
Wäre super
Danke Gruß sabram

Re: ContextMenu Check Item Enable?

Verfasst: Montag 28. Februar 2011, 17:17
von Gremlin
Auch wenn die Wahrscheinlichkeit, dass du das selbst schon rausgefunden hast, groß ist:

self.TestStepsContextMenu.AppendCheckItem(self.setFinallyStepID,"Set Finally Step")

self.TestCasesContextMenu.Enable(self.setFinallyStepID, True)

:roll:

Re: ContextMenu Check Item Enable?

Verfasst: Mittwoch 2. März 2011, 12:06
von sabram
ja ...

ich möchte dir trotzdem vielmals danken ;)