wxPython - Change cursor for ToolBar

Last Updated : 26 Jun, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
In this article will learn how can we change the cursor to a custom image cursor when it hovers over the toolbar. To do this we need to follow some steps as follows.
Step 1: Create wx.Image object of the image you like. Step 2: Create wx.Cursor object passing image as parameter. Step 3: Set cursor for toolbar using SetCursor() method.
Syntax: wx.ToolBar.SetCursor(self, cursor) Parameters:
Parameter Input Type Description
size wx.Size Size for radio button
Return Type: bool
Code Example: Python3 1==
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 to toolbar
        ptool = self.toolbar.AddTool(12, 'oneTool',
                                     wx.Bitmap('right.png'),
                                     wx.Bitmap('wrong.png'), shortHelp ="Simple Tool")

        qtool = self.toolbar.AddTool(12, 'oneTool', wx.Bitmap('wrong.png'),
                                     wx.Bitmap('wrong.png'), shortHelp ="Simple Tool")
        
        # create wx.Image object
        img = wx.Image('click.png')
        
        # create wx.Cursor object
        crsr = wx.Cursor(img)

        # set crsr cursor for the toolbar
        self.toolbar.SetCursor(crsr)

        self.toolbar.Realize()
        self.SetSize((350, 250))
        self.SetTitle('Control')
        self.Centre()


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


if __name__ == '__main__':
    main()
Output Window:

Next Article
Practice Tags :

Similar Reads