Open In App

wxPython | CreateTool() function in wx.Toolbar

Last Updated : 04 Jun, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

In this particular article we are going to learn about CreateTool() function in wx.ToolBar class in wxPython. CreateTool() function is a factory function to create a new toolbar tool. CreateTool() function only creates a tool which is further added using AddTool() function.

Syntax:
wx.ToolBar.CreateTool(self, id, label, bitmap, bmpDisabled=wx.NullBitmap, kind=wx.ITEM_NORMAL, clientData=None, shortHelp=””, longHelp=””)

Parameters :

Parameter Input Type Description
toolid int An integer by which the tool may be identified in subsequent operations.
label string The string to be displayed with the tool.
bmpNormal wx.bitmap The primary tool bitmap.
bmpDisabled wx.bitmap The bitmap used when the tool is disabled.
kind int kind of toolbar.
clientData PyUserData An optional pointer to client data which can be retrieved later using GetToolClientData.
shortHelp string This string is used for the tools tooltip.
longHelp string detailed string associated with tool.

Example:




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):
        pnl = wx.Panel(self)
        self.toolbar = self.CreateToolBar()
        # create a tool using CreateTool() function
        self.ptool = self.toolbar.CreateTool(12,
                                             'oneTool',
                                             wx.Bitmap('path / wxPython / right.png'),
                                             shortHelp ="Simple Tool")
          
        self.btn = wx.Button(pnl, label ='Add created tool', pos =(20, 20))
  
        self.btn.Bind(wx.EVT_BUTTON, self.Onclick)
        self.toolbar.Realize()
        self.SetSize((350, 250))
        self.SetTitle('Control')
        self.Centre()
  
    def Onclick(self, e):
        # Add toolbar tool using AddTool() function
        self.toolbar.AddTool(self.ptool)
        self.btn.SetLabel("Added tool")
  
def main():
  
    app = wx.App()
    ex = Example(None)
    ex.Show()
    app.MainLoop()
  
  
if __name__ == '__main__':
    main()


Output:
On starting Application:

On clicking button:



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads