今天主要是对wxpython的toolbar工具栏和menu菜单组件进行一个讲解,toolbar和menu作为一个较为常用的组件,在大部分的界面开发中都可能会使用到,以及对wxpython的主界面上的一些细节进行处理:
首先是在在frame中新创建一个panel面板,panel面板是是可以放置按钮、文本框等小部件的。而针对这个panel可以设置其底色,例如这里就使用了setbackgroundcolour设置其底色为白色。
wx.Frame.__init__(self, parent, id, 'Toolbars',
size=(889, 500))
panel = wx.Panel(self)
panel.SetBackgroundColour('White')
随后就是创建一个toolbar,首先是使用wx.image读取一个图片文件并创建一个变量,再将这个变量赋给创建一个toolbar的方法中,同时还可以传递其他参数,这里主要是传递一个图片参数,一个鼠标弹出提示,和一个底部状态栏显示参数。
toolbar = self.CreateToolBar()
image = wx.Image('hello.jpeg', wx.BITMAP_TYPE_JPEG)
toolbar.AddSimpleTool(wx.NewId(), image,
"New", "Long help for 'New'")
toolbar.Realize()
添加图片注释,不超过 140 字(可选)
随后就是针对菜单栏进行创建,在菜单栏中添加两个菜单,一个是file一个是edit菜单,对于file菜单不添加点击弹出选项,对于edit菜单添加弹出选项,实现如下:
menuBar = wx.MenuBar()
menu1 = wx.Menu()
menuBar.Append(menu1, "&File")
menu2 = wx.Menu()
menu2.Append(wx.NewId(), "&Copy", "Copy in status bar")
menu2.Append(wx.NewId(), "C&ut", "")
menu2.Append(wx.NewId(), "Paste", "")
menu2.AppendSeparator()
menu2.Append(wx.NewId(), "&Options...", "Display Options")
menuBar.Append(menu2, "&Edit")
self.SetMenuBar(menuBar)
注意在最后还需要将该菜单设置给frame框架,这样菜单栏方可生效。
添加图片注释,不超过 140 字(可选)
而对于弹出的选项中,同样可以传递底部状态栏参数,在移动鼠标至选项时,可以在底部状态栏显示内容。效果如下: