我们看到的菜单中多半是有一个图标的,那么今天我们就来做一个菜单,菜单选项左侧有一个图标。要达到这个目的我们必须手动创建一个选项。下面是今天代码的全部:由于这些大部分代码在之前的文章中有讲解,所以这篇文章就着重讲不同的部分。
#coding:utf8
import wx
class Example(wx.Frame):
def __init__(self, *args, **kwargs):
super(Example, self).__init__(*args, **kwargs)
self.InitUI()
def InitUI(self):
caidanlan = wx.MenuBar()#创建菜单栏
caidan = wx.Menu() #创建一个菜单
xuanxiang = wx.MenuItem(caidan,1,u'&退出')#一个选项
xuanxiang.SetBitmap(wx.Bitmap('exit.jpg'))#添加一个图标
caidan.AppendItem(xuanxiang)#将选项添加到菜单中
self.Bind(wx.EVT_MENU, self.OnQuit, id=1)#选项与动作绑定,这样点击该选项就会执行退出动作
caidanlan.Append(caidan, u'&下拉菜单') #将创建好的菜单添加到菜单栏
self.SetMenuBar(caidanlan) #将菜单栏添加到窗口Frame
self.SetSize((300, 200))
self.SetTitle(u'菜单')
self.Centre()
self.Show(True)
def OnQuit(self, e):
self.Close()
def main():
ex = wx.App()
Example(None)
ex.MainLoop()
if __name__ == '__main__':
main()
先创建一个选项:注意第二个参数设定了该选项的id,以后绑定方法的时候可以用id来表示该选项
设置选项的图标用到了方法:SetBitmap,该方法需要传入一个Bitmap对象:exit.jpg是我自己做的一个图片
将创建好的选项添加到菜单
将选项与方法绑定,这样点击该菜单选项就能执行OnQuit动作。注意现在用id来表示跟哪个选项进行的绑定,因为我们在
这是最后做出来的效果图