[wxPython-users] Binding mouse clicks to toolbar button
Cody Precord
codyprecord at gmail.com
Tue Sep 25 05:56:03 PDT 2007
Think your looking for wx.EVT_TOOL
cody
On Sep 25, 2007, at 7:49 AM, wormwood_3 wrote:
> Hello all,
>
> I have been following this list for a while, and everyone seems
> very helpful! I just started with wxPython, so hopefully this
> question will not prove too difficult--
>
> I have a toolbar and a menubar currently in a very basic app. Right
> now, I want them to effectively be the same, i.e. each menu item
> will have a corresponding toolbar button that does the same thing.
> Portion of my code with the menubar and the toolbar:
>
> # Add a tool bar:
> toolbar = self.CreateToolBar()
> helpbutton = toolbar.AddSimpleTool(wx.NewId(), wx.Image
> ('resources/help-browser.png',
> wx.BITMAP_TYPE_PNG).ConvertToBitmap(), 'Help', 'Help
> for Domainspotter')
> self.Bind(wx.EVT_LEFT_DOWN, self.ShowHelp, helpbutton)
> exitbutton = toolbar.AddSimpleTool(wx.NewId(), wx.Image
> ('resources/system-log-out.png',
> wx.BITMAP_TYPE_PNG).ConvertToBitmap(), 'Exit', 'Long
> help for Exit')
> self.Bind(wx.EVT_LEFT_DOWN, self.OnCloseMe, exitbutton)
> toolbar.Realize()
> # Add a menu bar:
> menubar = wx.MenuBar()
> menu1 = wx.Menu()
> menubar.Append(menu1, "&File")
> exititem = menu1.Append(wx.NewId(), "&Exit", "Exit
> Domainspotter")
> self.Bind(wx.EVT_MENU, self.OnCloseMe, exititem)
> menu2 = wx.Menu()
> menubar.Append(menu2, "&Help")
> aboutitem = menu2.Append(wx.NewId(), "&About", "About
> Domainspotter")
> self.Bind(wx.EVT_MENU, self.ShowAbout, aboutitem)
> helpitem = menu2.Append(wx.NewId(), "Help", "Domainspotter
> Help")
> self.Bind(wx.EVT_MENU, self.ShowHelp, helpitem)
> self.SetMenuBar(menubar)
>
> and then the associated functions mentioned in the Bind()'s:
>
> def OnCloseMe(self, event):
> self.Close(True)
>
> def ShowAbout(self, event):
> abouttext = wx.MessageDialog(self, self.abouttext, caption
> = "About Domainspotter",
> style = wx.OK | wx.ICON_INFORMATION)
> abouttext.ShowModal()
> abouttext.Destroy()
>
> def ShowHelp(self, event):
> helptext = wx.MessageDialog(self, self.helptext, caption =
> "Domainspotter Help",
> style = wx.OK | wx.ICON_INFORMATION)
> helptext.ShowModal()
> helptext.Destroy()
>
> The menubar items work just fine. Help and about show help and
> about, and exit exits. But, when I press the Help or Exit buttons,
> which are bound to the same functions, nothing happens. No errors
> either.
>
> My guess is that I have the wrong event specified in the self.Bind
> for the buttons. I tried wx.EVT_BUTTON as well, same deal.
>
> Thanks in advance for the help,
> Sam
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: wxPython-users-unsubscribe at lists.wxwidgets.org
> For additional commands, e-mail: wxPython-users-
> help at lists.wxwidgets.org
>
More information about the wxpython-users
mailing list