In this article we are going to learn about FindToolForPosition() function of class wx.ToolBar of wxPython. FindToolForPosition() is used to find a tool for the given mouse position. It takes x and y position of the window.
Syntax:
wx.ToolBar.FindToolForPosition(self, x, y)Parameters :
Parameter Input Type Description x int X position. y int Y position. Return Type:
wx.ToolBarToolBase
Code Example 1:Â
Python3
import wxÂ
Â
class Example(wx.Frame):    global count    count = 0;Â
    def __init__(self, *args, **kwargs):        super(Example, self).__init__(*args, **kwargs)Â
        self.InitUI()Â
    def InitUI(self):        self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)        pnl = wx.Panel(self)        self.toolbar = self.CreateToolBar()        # Add Tools Using AddTool function        rtool = self.toolbar.AddTool(13, 'twoTool', wx.Bitmap('wrong.png'), shortHelp ="Simple Tool2")Â
        self.toolbar.Realize()        self.SetSize((350, 250))        self.SetTitle('Control')        self.Centre()Â
        # print wx.ToolBarToolBase object of tool        print(self.toolbar.FindToolForPosition(5, 5))Â
Â
def main():Â Â Â Â app = wx.App()Â Â Â Â ex = Example(None)Â Â Â Â ex.Show()Â Â Â Â app.MainLoop()Â
Â
if __name__ == '__main__':Â Â Â Â main() |
Output :
<wx._core.ToolBarToolBase object at 0x0000009B92B041F0>
Code Example 2:Â
Python3
import wxÂ
Â
class Example(wx.Frame):    global count    count = 0;Â
    def __init__(self, *args, **kwargs):        super(Example, self).__init__(*args, **kwargs)Â
        self.InitUI()Â
    def InitUI(self):        self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)        pnl = wx.Panel(self)        self.toolbar = self.CreateToolBar()        # Add Tools Using AddTool function        rtool = self.toolbar.AddTool(13, 'twoTool', wx.Bitmap('wrong.png'), shortHelp ="Simple Tool2")        stool = self.toolbar.AddTool(14, 'twoTool', wx.Bitmap('user.png'), shortHelp ="Simple Tool2")        self.toolbar.Realize()        self.SetSize((350, 250))        self.SetTitle('Control')        self.Centre()Â
        # print wx.ToolBarToolBase object of tool        print(self.toolbar.FindToolForPosition(40, 5).GetLabel())Â
Â
def main():Â Â Â Â app = wx.App()Â Â Â Â ex = Example(None)Â Â Â Â ex.Show()Â Â Â Â app.MainLoop()Â
Â
if __name__ == '__main__':Â Â Â Â main() |
Output:
twoTool
