博客
关于我
wxpython的Hello,World代码探索
阅读量:380 次
发布时间:2019-03-05

本文共 3492 字,大约阅读时间需要 11 分钟。

python界面编程资料

#!/bin/python"""Hello World, but with more meat."""import wxclass HelloFrame(wx.Frame):    """    A Frame that says Hello World    """    def __init__(self, *args, **kw):        # ensure the parent's __init__ is called        super(HelloFrame, self).__init__(*args, **kw)        # create a panel in the frame        pnl = wx.Panel(self)        # and put some text with a larger bold font on it        st = wx.StaticText(pnl, label="Hello Friend!", pos=(500,260))        font = st.GetFont()        font.PointSize += 50        font = font.Bold()        st.SetFont(font)        # create a menu bar        self.makeMenuBar()        # and a status bar        self.CreateStatusBar()        self.SetStatusText("Welcome to wxPython100!")    def makeMenuBar(self):        """        A menu bar is composed of menus, which are composed of menu items.        This method builds a set of menus and binds handlers to be called        when the menu item is selected.        """                # Make a file menu with Hello and Exit items        fileMenu = wx.Menu()        # The "\t..." syntax defines an accelerator key that also triggers        # the same event        helloItem = fileMenu.Append(-1, "&Hello...\tCtrl-H",                 "Help string shown in status bar for this menu item")        fileMenu.AppendSeparator()        # When using a stock ID we don't need to specify the menu item's        # label        exitItem = fileMenu.Append(wx.ID_EXIT)        # Now a help menu for the about item        helpMenu = wx.Menu()        aboutItem = helpMenu.Append(wx.ID_ABOUT)        # Make the menu bar and add the two menus to it. The '&' defines        # that the next letter is the "mnemonic" for the menu item. On the        # platforms that support it those letters are underlined and can be        # triggered from the keyboard.        menuBar = wx.MenuBar()        menuBar.Append(fileMenu, "&File")        menuBar.Append(helpMenu, "&Help")        # Give the menu bar to the frame        self.SetMenuBar(menuBar)        # Finally, associate a handler function with the EVT_MENU event for        # each of the menu items. That means that when that menu item is        # activated then the associated handler function will be called.        self.Bind(wx.EVT_MENU, self.OnHello, helloItem)        self.Bind(wx.EVT_MENU, self.OnExit,  exitItem)        self.Bind(wx.EVT_MENU, self.OnAbout, aboutItem)    def OnExit(self, event):        """Close the frame, terminating the application."""        self.Close(True)    def OnHello(self, event):        """Say hello to the user."""        wx.MessageBox("This is a wxPython Hello World sample",                       "Hello again from wxPython")                          def OnAbout(self, event):        """Display an About Dialog"""        wx.MessageBox("This is a wxPython Hello World sample",                       "About Hello World 2",                      wx.OK|wx.ICON_INFORMATION)if __name__ == '__main__':    # When this module is run (not imported) then create the app, the    # frame, show it, and start the event loop.    app = wx.App()    frm = HelloFrame(None, title='Hello World 100')    frm.Show()    app.MainLoop()

super()的解释

 

fileMenu.AppendSeparator()

这个函数是在两个子选项之间添加分隔符

 

MessageBox的标题是逗号后面的那句,消息内容是第一句。

 

wx.OK|wx.ICON_INFORMATION

红色矩形框,这一句少了会报错

 

不加到最后一个OnAbout也不行

 

每句都加也不行

只能加到最后一句

 

helloItem = fileMenu.Append(-1, "&Hello...\tCtrl-H",

"Help string shown in status bar for this menu item")

-1可以,-2可以,-3可以,-4不行,-4以下都不行。0---10000可以

转载地址:http://klywz.baihongyu.com/

你可能感兴趣的文章
MySQL 是如何加锁的?
查看>>
MySQL 是怎样运行的 - InnoDB数据页结构
查看>>
mysql 更新子表_mysql 在update中实现子查询的方式
查看>>
MySQL 有什么优点?
查看>>
mysql 权限整理记录
查看>>
mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询,正数降序排序,负数升序排序
查看>>
MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
查看>>
mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
查看>>
mysql 死锁(先delete 后insert)日志分析
查看>>
MySQL 死锁了,怎么办?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 深度分页性能急剧下降,该如何优化?
查看>>
MySQL 添加列,修改列,删除列
查看>>
mysql 添加索引
查看>>