0

这个源代码

class MyToolBar(wx.ToolBar):
  def AddTool2(self, id, shortHelp = '', longHelp = ''):
    global TB_SIZE
    try:
      ArtId = ArtMap.get(id)
      Ico = wx.ArtProvider.GetBitmap(ArtId, wx.ART_TOOLBAR, TB_SIZE)
      self.AddSimpleTool(id, Ico, shortHelp, longHelp)
    except StandardError:
      print('Something wrong, maybe wrong id')

Class MyFrame(wx.Frame):
  def __init__(self, parent, *args, **kwargs):
    wx.Frame.__init__(self, parent, *args, **kwargs)

    ToolBar = MyToolBar(self)
    ToolBar.AddTool2(wx.ID_NEW, 'New', 'Creates new file')
    self.SetToolBar(ToolBar)
    self.GetToolBar().Realize()


ArtMap = { wx.ID_NEW : wx.ART_NEW,
          }
ID_BOUNCE = wx.NewId()
TB_SIZE = wx.Size(16,16)

app = wx.app()
frame = MyFrame(None, -1, 'MyFrame', (0,0))
app.MainLoop()

当工具具有 wx.ART 时,可以很好地向工具栏添加工具。但是,您如何添加一个没有 wx.ART 或没有 wx.ART 的新工具,可以很好地表示它,就像 ID_BOUNCE 工具 Bounce 假设让球在框架中反弹?

提前致谢。

4

1 回答 1

1

wx.ToolBar具有AddLabelTool带有位图参数的方法。
zetcode上找到一个示例。

于 2012-05-06T21:14:59.853 回答