为了账号安全,请及时绑定邮箱和手机立即绑定

wxPython实例练习

标签:
Python

第一版:WXPython的helloWord版本

#导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  #初始化接口,子类覆盖父类的方法
        frame=wx.Frame(parent=None,title="hello wxpython")  #新建框架
        frame.Show()  #显示
        return Trueapp=MyApp()      #启动app.MainLoop()   #进入消息循环

第二版:wxPython添加按钮

#导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  #初始化接口,子类覆盖父类的方法
        frame=wx.Frame(parent=None,title="hello wxpython")  #新建框架
        panel=wx.Panel(frame,-1)     #生成面板
        button=wx.Button(panel,-1,'hello',pos=(50,50))   #确定按钮位置
        
        frame.Show()  #显示
        return Trueapp=MyApp()      #启动app.MainLoop()   #进入消息循环

第三版:wxPython添加按钮的监听

#导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  #初始化接口,子类覆盖父类的方法
        frame=wx.Frame(parent=None,title="hello wxpython")  #新建框架
        panel=wx.Panel(frame,-1)     #生成面板
        button=wx.Button(panel,-1,'hello',pos=(50,50))   #确定按钮位置
        self.button1=button
        self.Bind(wx.EVT_BUTTON,  #绑定事件,如果是按钮被点击
                  self.OnButton1, #激发的按钮事件
                  self.button1)   #激发的按钮
        frame.Show()  #显示
        return True

    def OnButton1(self,event):  #事件的激发函数
        self.button1.SetLabel("ni")app=MyApp()      #启动app.MainLoop()   #进入消息循环

第四版:wxPython添加标签和输入框

# 导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  # 初始化接口,子类覆盖父类的方法
        frame = wx.Frame(parent=None, title="hello wxpython")  # 新建框架
        panel = wx.Panel(frame, -1)  # 生成面板
        label1=wx.StaticText(panel,-1,"MutilLine",pos=(20,30))  #标签
        text1=wx.TextCtrl(panel,-1,pos=(10,30),size=(180,30),   #输入框
                           style=wx.TE_MULTILINE)
        button = wx.Button(panel, -1, 'hello', pos=(50, 50))  # 确定按钮位置
        frame.Show()  # 显示
        return Trueapp = MyApp()  # 启动app.MainLoop()  # 进入消息循环

第五版:将事件监听和按钮绑定

# 导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  # 初始化接口,子类覆盖父类的方法
        frame = wx.Frame(parent=None, title="hello wxpython")  # 新建框架
        panel = wx.Panel(frame, -1)  # 生成面板
        label1=wx.StaticText(panel,-1,"cmd tools",pos=(10,10))  #标签
        text1=wx.TextCtrl(panel,-1,pos=(10,150),size=(180,30),   #输入框
                           style=wx.TE_MULTILINE)
        button = wx.Button(panel,-1, 'run', pos=(10, 50))  # 确定按钮位置
        self.text1=text1          #方便跨函数调用
        self.button1 = button
        self.Bind(wx.EVT_BUTTON,  # 绑定事件,如果是按钮被点击
                  self.OnButton1,  # 激发的按钮事件
                  self.button1)  # 激发的按钮
        frame.Show()  # 显示
        return True

    def OnButton1(self,event):  #事件的激发函数
        self.button1.SetLabel("ni")
        print(self.text1.GetValue())  #获取到输入的信息app = MyApp()  # 启动app.MainLoop()  # 进入消息循环

第六版:wxPython制作一个登录界面

# 导入wx模块import wxclass MyApp(wx.App):
    def OnInit(self):  # 初始化接口,子类覆盖父类的方法
        frame = wx.Frame(parent=None, title="用户登录")  # 新建框架
        panel = wx.Panel(frame, -1)  # 生成面板
        label1=wx.StaticText(panel,-1,"user",pos=(10,10))  #标签
        text1=wx.TextCtrl(panel,-1,pos=(80,10),size=(180,30),   #输入框
                           style=wx.TE_MULTILINE)
        label2 = wx.StaticText(panel, -1, "password", pos=(10, 60))  # 标签
        text2 = wx.TextCtrl(panel, -1, pos=(80, 60), size=(180, 30),  # 输入框
                            style=wx.TE_MULTILINE)

        button1 = wx.Button(panel,-1, 'login', pos=(80, 110))  # 确定按钮位置
        button2 = wx.Button(panel, -1, 'clear', pos=(180, 110))  # 确定按钮位置

        self.text1 = text1          # 方便跨函数调用
        self.text2 = text2          # 方便跨函数调用
        self.button1 = button1      # 方便跨函数调用
        self.button2 = button2      # 方便跨函数调用

        self.Bind(wx.EVT_BUTTON,  # 绑定事件,如果是按钮被点击
                  self.login,  # 激发的按钮事件
                  self.button1)  # 激发的按钮
        self.Bind(wx.EVT_BUTTON,  # 绑定事件,如果是按钮被点击
                  self.clear,  # 激发的按钮事件
                  self.button2)  # 激发的按钮

        frame.Show()  # 显示
        return True

    #def OnButton1(self,event):  #事件的激发函数
        #self.button1.SetLabel("ni")
        #print(self.text1.GetValue())  #获取到输入的信息
    def login(self,event):      #事件的激发函数
        user = self.text1.GetValue()  #获取用户名
        password = self.text2.GetValue()  #获取密码
        if user == "leo" and password == "123456":
            wx.MessageBox("OK","info",wx.OK|wx.ICON_INFORMATION)
        else:
            wx.MessageBox("NO", "info", wx.OK|wx.ICON_INFORMATION)
    def clear(self,event):
        passapp = MyApp()  # 启动app.MainLoop()  # 进入消息循环


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消