首页 PyQt5教程 一个简单的PyQt5代码演示
pay pay

一个简单的PyQt5代码演示

日期: 2021年11月19日 14:22
栏目: PyQt5教程
阅读: 268
作者: python自学网

摘要: PyQt5拥有严谨的代码结构和类结构,我们在后期的学习中也会遵循这个规律,这样学习起来不仅代码规范,也能更高效的复用代码资源。这节课我们通过两段简单的代码带你了解PyQt5的玩法,首先第一段代码如下:

PyQt5拥有严谨的代码结构和类结构,我们在后期的学习中也会遵循这个规律,这样学习起来不仅代码规范,也能更高效的复用代码资源。这节课我们通过两段简单的代码带你了解PyQt5的玩法,首先第一段代码如下:

from PyQt5.Qt import *
import sys
  
app = QApplication(sys.argv)
 
window = QWidget()
window.setWindowTitle("软件名称")
window.resize(600,500)
  
btn = QPushButton(window)
btn.setText("按钮")
btn.resize(120, 30)
btn.move(100, 100)
btn.setStyleSheet('background-color:green;font-size:16px;')
  
label =QLabel(window)
label.setText('标签')
label.setStyleSheet('background-color:green;font-size:16px;')
# label.show()
window.show()
  
sys.exit(app.exec_())

上面代码中第一行和第二行是引用两个包,第一个是PyQt5的所有控件,在以后的开发中我们不能这样引用整体包,这样会使软件变得很臃肿,不利于软件的快速运行,但是在学习过程中我们不了解应该使用哪些类,所以暂时直接引用所有类。

第四行是创建应用程序,我们的软件就是一个桌面应用程序,所以先要通过QApplication来实例化。

第6-8行创建一个窗口,视频课程中也有详细说明窗口的范围和样式,这里设置了窗口的title和尺寸。

然后我们又在窗口中放入了两个控件,分别是一个按钮和一个标签,这两个控件我们在后面的学习中还要详细讲解他的使用方法,这里我们给了相应的属性样式。

到19行我们看到有个show函数,这是让窗口展示的方法,属于非模态方法,后面我们在对话框控件中会学习模态和非模态的用法。

最后一段代码可以简单的理解为组织窗口闪退的,因为软件界面是电脑绘制出来的,如果没有这段代码,电脑绘制一次窗口就会关闭,而且不会反回任何错误。

下面我们再来看一段代码,和上面的功能是一样的,只是使用了面向对象的思维来封装一下,为我们下节课的模板设置做个准备。

from PyQt5.Qt import *
import sys
  
class Window(QWidget):
    def __init__(self):
        super().__init__()   # 调用父类QWidget中的init方法
        self.setWindowTitle("软件名称")
        self.resize(600,500)
        self.func_list()
  
    def func_list(self):
        self.func()
  
    def func(self):
        btn = QPushButton(self)
        btn.setText("软件内容")
        btn.resize(120,30)
        btn.move(100,100)
        btn.setStyleSheet('background-color:green;font-size:20px;')
  
if __name__ == '__main__':
    app = QApplication(sys.argv)  # 创建一个应用程序对象
    # sys.argv可以接收用户命令行启动时所输入的参数,根据参数执行不同程序
    # qApp 为全局对象
    print(sys.argv)
    print(app.arguments())
    print(qApp.arguments())
    # 以上三个输出结果是一样的
    window = Window()
  
    window.show()
    sys.exit(app.exec_())    # 0是正常退出
    # app.exec_()  进行循环
    # sys.exit()   检测退出原因

 

回顶部