wx.toobar工具欄
来源:互联网 发布:淘宝保税区发货 编辑:程序博客网 时间:2024/05/21 19:42
工具栏(toolbar)是一个把你的应用程序中最常用命令或操作分为不同组别的部件. 作为典型,保存、打开、剪切、复制、粘贴、撤销、重做等都是工具栏中的项目. 工具栏的用途是节省时间. 从工具栏执行一个操作你只需一次点击,而从菜单的话要两次操作.
[more…]
#!/usr/bin/python#coding=utf-8#toolbar.pyimport wxclass MyToolBar(wx.Frame): def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(350, 250)) vbox = wx.BoxSizer(wx.VERTICAL) toolbar = wx.ToolBar(self, -1, style=wx.TB_HORIZONTAL | wx.NO_BORDER) toolbar.AddSimpleTool(1, wx.Image('./icons/stock_new.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap(), '新建', '') toolbar.AddSimpleTool(2, wx.Image('./icons/stock_open.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap(), '打开', '') toolbar.AddSimpleTool(3, wx.Image('./icons/stock_save.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap(), '保存', '') toolbar.AddSimpleTool(4, wx.Image('./icons/stock_exit.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap(), '退出', '') toolbar.Realize() vbox.Add(toolbar, 0, border=5) self.SetSizer(vbox) self.statusbar = self.CreateStatusBar() self.Center() self.Bind(wx.EVT_TOOL, self.OnNew, id=1) self.Bind(wx.EVT_TOOL, self.OnOpen, id=2) self.Bind(wx.EVT_TOOL, self.OnSave, id=3) self.Bind(wx.EVT_TOOL, self.OnExit, id=4) def OnNew(self, event): self.statusbar.SetStatusText('新建命令') def OnOpen(self, event): self.statusbar.SetStatusText('打开命令') def OnSave(self, event): self.statusbar.SetStatusText('保存命令') def OnExit(self, event): self.statusbar.SetStatusText('退出命令')class MyApp(wx.App): def OnInit(self): frame = MyToolBar(None, -1, 'toolbar.py') frame.Show(True) return Trueapp = MyApp(0)app.MainLoop()
wx.BoxSizer 将会在后面的布局章节进行介绍. 工具栏部件可通过三步得以创建.
首先,我们创建一个工具栏对象.
toolbar = wx.ToolBar(self, -1, style=wx.TB_HORIZONTAL | wx.NO_BORDER)
接着我们要通过 AddSimleTool() 方法将一些工具按钮添加到工具栏中. 在参考书中你是找不到这个方法的. 它是一个 wxPython“扩展”. 这既是好事同时也有坏处. 这些扩展令到 python 编程更为容易. 但另一方面,它们又都没有良好的文档. 你毋须去看封装代码、演示实例或在邮件列表上问其他人.
toolbar.AddSimpleTool(1, wx.Image('./icons/stock_new.png', wx.BITMAP_TYPE_PNG).ConvertToBitmap(), '新建', '')
最后,我们调用了Realize() 方法. 此方法将该工具栏部件呈现或渲染出来.
toolbar.Realize()
工具栏部件有着好几个事件处理器. 在你点击一个工具栏图标时,一个 wx.EVT_COMMAND_TOOL_CLICKED 事件就产生了. 通过wx.EVT_TOOL 处理器,我们将此事件绑定到一个特定的方法.
为了给这些事件显示处一些有意义的输出,我们建立了一个状态栏.
self.statusbar = self.CreateStatusBar()
这又是另一个 wxPython 扩展. 如此一来,在我们点击一个工具栏按钮时,状态栏上就会显示出一条消息. 这是通过 SetStatusText() 方法实现的.
图:toolbar.py
0 0
- wx.toobar工具欄
- toobar
- \wx
- wx
- wx
- wx
- wx
- wx
- Toobar样式
- wxpython中wx.RadioBox下编写了个工具
- TooBar的使用
- Toobar 的简单使用
- tooBar学习笔记
- toobar---闪退问题
- 自定义键盘上的TooBar
- Toobar标题文字居中解决方案
- 基于Python及Wx的离线Blog发布工具Zoundry Raven
- wxPython.wx
- DIV CSS遮罩层 简单实用小实例
- svn 操作记录
- 解题报告 之 UVA11093 Just Finish it up
- 如何鉴别真假线上团购网站 ——放羊团
- ios中巧妙删除所有的子控件
- wx.toobar工具欄
- 通过servlet来下载文件
- vim命令集合
- 放羊团
- 操作系统 序
- for xml path
- ROS探索总结(十四)——move_base(路径规划)
- tftp Error on server : Access violation解决办法
- 马云经典励志语录