En este artículo vamos a aprender sobre la función InsertTool() asociada con la clase wx.ToolBar de wxPython. La función InsertTool() es el nuevo estilo de insertar una herramienta en la barra de herramientas en una posición particular. InsertTool() toma argumentos asociados con una herramienta como sus parámetros.
Sintaxis: wx.ToolBar.InsertTool (self, pos, toolId, label, bitmap, bmpDisabled=NullBitmap, kind=ITEM_NORMAL, shortHelp=””, longHelp=””, clientData=Ninguno)
Parámetros:
Parámetro Tipo de entrada Descripción posición En t Posición para añadir herramientas a partir de 0. ID de herramienta En t Un número entero por el cual la herramienta puede identificarse en operaciones posteriores. etiqueta cuerda La string que se mostrará con la herramienta. mapa de bits wx.mapa de bits El mapa de bits de la herramienta principal. bmpDeshabilitado wx.mapa de bits El mapa de bits utilizado cuando la herramienta está deshabilitada. tipo En t especie de barra de herramientas. breveAyuda cuerda Esta string se utiliza para la información sobre herramientas. ayuda larga cuerda string detallada asociada con la herramienta. datos del cliente PyUserData Un puntero opcional a los datos del cliente que se puede recuperar más tarde mediante GetToolClientData. Tipo de retorno:
wx.ToolBarToolBase
Ejemplo de código:
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()
Salida:
antes de hacer clic en la herramienta separada:
después de hacer clic en la herramienta separada:
Ejemplo de código:
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()
Salida:
antes de hacer clic en la herramienta separada:
después de hacer clic en la herramienta separada:
Publicación traducida automáticamente
Artículo escrito por RahulSabharwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA