Python教程

wxPython框架的使用(登录页面)

本文主要是介绍wxPython框架的使用(登录页面),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

GUI(图形用户界面)
对于pyThon的GUI开发,有很多的工具包,wxPython是其中的一个工具包,特点:wxpython是一个成熟且特性丰富的跨平台GUI工具包

wxPython

    • 一.wxPython的安装
    • 二.wxPython的基本框架
    • 三.登录页面的完整代码

一.wxPython的安装

打开cmd
输入pip install -U wxPython(我安装输入这个的时候没有成功)
也可以直接输入 pip install wxPython

二.wxPython的基本框架

1.代码实现

import wx  #导入wxpython
#wx.Frame是所有的框架的父类,当创建字类的时候应该应该要调用父类的构造器wx.Frame.__init__()
class MyFrame(wx.Frame):
    '''parent:框架的父窗口,如果是顶级窗口那么值为None
       id:当值为-1时,让wxpython自动生成一个id号
       title:里面的内容为窗口的标题
       size:为窗口的大小,前面一位为长度,后面因为为宽度
       '''
    def __init__(self,parent,id):
        wx.Frame.__init__(self,parent,id,title='登录页面',size=(400,300))

if __name__=='__main__':
    app=wx.App()#创建一个wx.App实例
    frame=MyFrame(parent=None,id=-1)#实列化MyFrame
    frame.Show()#显示窗口
    app.MainLoop()#这个方法将程序的控制权转交给wxPython

2.执行结果
在这里插入图片描述
3.创建画板

panel=wx.Panel(self)

执行结果
在这里插入图片描述

三.登录页面的完整代码

1.代码实现

import wx  #导入wxpython
#wx.Frame是所有的框架的父类,当创建字类的时候应该应该要调用父类的构造器wx.Frame.__init__()
class MyFrame(wx.Frame):
    '''parent:框架的父窗口,如果是顶级窗口那么值为None
       id:当值为-1时,让wxpython自动生成一个id号
       title:里面的内容为窗口的标题
       size:为窗口的大小,前面一位为长度,后面因为为宽度
       '''
    def __init__(self,parent,id):
        wx.Frame.__init__(self,parent,id,title='登录页面',size=(400,300))
        panel=wx.Panel(self)
        #当使用文本的时候使用StaticText(),pos是距离左上角的长度,一般等于一个元组
        title=wx.StaticText(panel,label='用户名和密码',pos=(130,10))
        #设置文本的字体
        font=wx.Font(16,wx.DEFAULT,wx.FONTSTYLE_NORMAL,wx.NORMAL,faceName='楷体')
        #把标题的字设置为上面的字体
        title.SetFont(font)
        self.user_label=wx.StaticText(panel,label='用户名',pos=(50,50),size=(50,20))
        #当需要输入框时,需要用TextCtrl,style是设置输入的字体为什么格式,例如wx,TE_LEFT:输入的字体靠左
        self.text_label=wx.TextCtrl(panel,pos=(100,50),size=(190,20),style=wx.TE_LEFT)
        self.user_password=wx.StaticText(panel,label='密 码',pos=(50,100),size=(50,20))
        #wx.TE_PASSWORD:不显示输入的字体
        self.password=wx.TextCtrl(panel,pos=(100,100),size=(190,20),style=wx.TE_PASSWORD)
        #当设置按钮时用Button方法
        button1=wx.Button(panel,label='取消',pos=(120,160),size=(50,30))
        #当按下这个按钮时将会做出相应的反应,这里是调用 OnclickCancel()函数
        button1.Bind(wx.EVT_BUTTON,self.OnclickCancel)
        button2=wx.Button(panel,label='确认',pos=(200,160),size=(50,30))
        button2.Bind(wx.EVT_BUTTON,self.OnclickSubmit)

    

    def OnclickSubmit(self,event):
        message=''
        username=self.text_label.GetValue()
        password=self.password.GetValue()
        if username=='' or password=='':
            message='用户名和密码不能为空'
        elif username=='mr' and password=='mrsoft':
            message='登录成功'
        else:
            message='用户名和密码不匹配'
        wx.MessageBox(message)#弹出提示框

    def OnclickCancel(self,event):
        self.text_label.SetValue('')
        self.password.SetValue('')
    
    
if __name__=='__main__':
    app=wx.App()#创建一个wx.App实例
    frame=MyFrame(parent=None,id=-1)#实列化MyFrame
    frame.Show()#显示窗口
    app.MainLoop()#这个方法将程序的控制权转交给wxPython

2.执行结果
当输入用户名为mr,密码为mrsoft时,提示框会弹出登录成功
在这里插入图片描述
当有一个有一个框为空时,会弹出用户名和密码不能为空
在这里插入图片描述

***就到这啦


这篇关于wxPython框架的使用(登录页面)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!