博客
关于我
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 使用sql文件恢复数据库
查看>>
mysql 修改默认字符集为utf8
查看>>
Mysql 共享锁
查看>>
MySQL 内核深度优化
查看>>
mysql 内连接、自然连接、外连接的区别
查看>>
mysql 写入慢优化
查看>>
mysql 分组统计SQL语句
查看>>
Mysql 分页
查看>>
Mysql 分页语句 Limit原理
查看>>
MySql 创建函数 Error Code : 1418
查看>>
MySQL 创建新用户及授予权限的完整流程
查看>>
mysql 创建表,不能包含关键字values 以及 表id自增问题
查看>>
mysql 删除日志文件详解
查看>>
mysql 判断表字段是否存在,然后修改
查看>>
MySQL 到底能不能放到 Docker 里跑?
查看>>
mysql 前缀索引 命令_11 | Mysql怎么给字符串字段加索引?
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
mysql 四种存储引擎
查看>>
MySQL 基础模块的面试题总结
查看>>