📅  最后修改于: 2023-12-03 15:35:45.919000             🧑  作者: Mango
在 wxPython 的 wx.ToolBar 控件中,SetToolNormalBitmap() 函数可以设置某个工具栏按钮的普通状态下的位图图像。
def SetToolNormalBitmap(self, toolId, bmp):
该函数没有返回值。
import wx
class MyFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, 'wxPython ToolBar 示例程序', size=(500, 350))
panel = wx.Panel(self)
toolbar = self.CreateToolBar()
ttool = toolbar.AddLabelTool(wx.ID_ANY, '', wx.Bitmap('new.bmp'))
ttool2 = toolbar.AddLabelTool(wx.ID_ANY, '', wx.Bitmap('copy.bmp'))
toolbar.Realize()
self.Bind(wx.EVT_TOOL, self.OnNew, ttool)
self.Bind(wx.EVT_TOOL, self.OnCopy, ttool2)
def OnNew(self, event):
print('你点击了New工具按钮')
def OnCopy(self, event):
print('你点击了Copy工具按钮')
# 设置工具按钮的普通状态下的位图图像
event.GetEventObject().SetToolNormalBitmap(event.GetId(), wx.Bitmap('cut.bmp'))
if __name__ == '__main__':
app = wx.App()
frame = MyFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()
上述代码中,我们创建了一个 wx.ToolBar 控件,其中添加了两个工具栏按钮。在 OnCopy() 函数中,我们通过 GetEventObject() 函数获取了当前被点击的工具栏按钮,然后用 SetToolNormalBitmap 函数将该按钮的普通状态下的位图图像改为了 cut.bmp。当我们再次点击该按钮时,它的位图图像就会被改为 cut.bmp。