wxPython wx.ToolBar中的InsertTool()函数
在这篇文章中,我们将学习与wxPython的wx.ToolBar类有关的InsertTool()函数。InsertTool()函数是在工具栏中插入一个特定位置的工具的新样式。InsertTool()将与工具相关的参数作为其参数。
语法: wx.ToolBar.InsertTool (self, pos, toolId, label, bitmap, bmpDisabled=NullBitmap, kind=ITEM_NORMAL, shortHelp=””, longHelp=””, clientData=None)
参数 。
参数 | 输入类型 | 说明 |
---|---|---|
pos | int | 添加工具的位置,从0开始。 |
toolid | int | 一个整数,在随后的操作中可以用来识别该工具。 |
label | 字符串 | 将与工具一起显示的字符串。 |
bitmap | wx.bitmap | 主要的工具位图。 |
bmpDisabled | wx.bitmap | 工具被禁用时使用的位图。 |
kind | int | 工具栏的种类。 |
shortHelp | 字符串 | 这个字符串用于工具条的提示。 |
longHelp | 字符串 | 与工具相关的详细字符串。 |
clientData | PyUserData | 客户端数据的一个可选的指针,可以在以后使用GetToolClientData来检索。 |
返回类型: wx.ToolBarToolBase
代码示例 。
import wx
class Example(wx.Frame):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.InitUI()
def InitUI(self):
self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)
self.toolbar = self.CreateToolBar()
td = self.toolbar.AddTool(1, '', wx.Bitmap('sep.png'))
self.toolbar.Realize()
self.Bind(wx.EVT_TOOL, self.OnOne, td)
self.SetSize((350, 250))
self.SetTitle('Undo redo')
self.Centre()
def OnOne(self, e):
# insert tool with id = 2
self.toolbar.InsertTool(pos = 1, toolId = 2, label ='wrong',
bitmap = wx.Bitmap('wrong.png'))
self.toolbar.Realize()
def OnQuit(self, e):
self.Close()
def main():
app = wx.App()
ex = Example(None)
ex.Show()
app.MainLoop()
if __name__ == '__main__':
main()
输出:
点击独立工具前:
点击独立工具后:
代码示例 。
import wx
class Example(wx.Frame):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.InitUI()
def InitUI(self):
self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)
self.toolbar = self.CreateToolBar()
td = self.toolbar.AddTool(1, '', wx.Bitmap('sep.png'))
self.toolbar.Realize()
self.Bind(wx.EVT_TOOL, self.OnOne, td)
self.SetSize((350, 250))
self.SetTitle('Undo redo')
self.Centre()
def OnOne(self, e):
# insert two tools in one go
self.toolbar.InsertTool(pos = 3, toolId = 2, label ='wrong',
bitmap = wx.Bitmap('wrong.png'))
self.toolbar.InsertTool(pos = 4, toolId = 3, label ='right',
bitmap = wx.Bitmap('right.png'))
self.toolbar.Realize()
def OnQuit(self, e):
self.Close()
def main():
app = wx.App()
ex = Example(None)
ex.Show()
app.MainLoop()
if __name__ == '__main__':
main()
输出:
点击单独工具前:
点击单独工具后: