简单的PyQt5教程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


提示:以下是本篇文章正文内容,下面案例可供参考

一、PyQt5是什么是?

PyQt5是 Python 的图形用户界面 (GUI) 模块,您可以使用 Python 制作桌面应用程序。

二、安装PyQt5

安装

win+R打开运行,键入cmd回车进入cmd命令窗口

在cmd命令窗口打开中打开python:

C:\Users\Administrator>python

导入pip:

import pip

用main函数打开pip

pip.main()

下载PyQt5

pip download PyQt5

安装PyQt5

pip install PyQt5

如果pip需要更新(如果不需要,忽略):

C:\Users\Administrator>python -m pip install --upgrade pip

第一个Gui窗口

和其他GUI一样,首先要导入模块

import sys
from PyQt5.QtWidgets import QApplication, QPushButton,QWidget

QtWidgets,QtGui,QtCore是PyQt5的三大组件,而QWidget是QtWidgets的子类,一般创建窗口用QtWidgets的子类QWidget,QMainWindow。
然后创建一个类继承自QWidget

class window(QWidget):

并且必须继承父类的__init__()方法,不然会报错

super().__init__()

完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication, QPushButton,QWidget

app = QApplication(sys.argv)


class window(QWidget):
    def __init__(self):
        super().__init__()
        self.lb=QPushButton("hello,world",self)
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

二,QLabel

QLabel是QLabel用于显示文本的小部件
完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication, QLabel,QWidget

app = QApplication(sys.argv)


class window(QWidget):
    def __init__(self):
        super().__init__()
        self.lb=QLabel("hello,world",self)
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

三,QCheckBox

完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication,QMainWindow,QCheckBox

app = QApplication(sys.argv)


class window(QMainWindow):
    mylist="java","C++","python"
    
    def __init__(self):
        super().__init__()
        self.width = 640
        self.height = 400
        self.setGeometry(10,10, self.width, self.height)
        self.sp=QCheckBox("java",self)
        self.sp2=QCheckBox("pyton",self)
        self.sp.move(100,100)
        self.sp2.move(100,200)
        
        
        


        
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

四,QComboBox

完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication,QMainWindow,QComboBox

app = QApplication(sys.argv)


class window(QMainWindow):
    mylist="java","C++","python"
    
    def __init__(self):
        super().__init__()
        self.width = 640
        self.height = 400
        self.setGeometry(10,10, self.width, self.height)

        self.combobox=QComboBox(self)
        self.combobox.addItems(self.mylist)
        
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

五,QRadioButton

完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication,QMainWindow,QRadioButton

app = QApplication(sys.argv)


class window(QMainWindow):
    def __init__(self):
        super().__init__()
        self.width = 640
        self.height = 400
        self.setGeometry(10,10, self.width, self.height)
        self.rbtn=QRadioButton("java",self)
        self.rbtn2=QRadioButton("C++",self)
        self.rbtn3=QRadioButton("python",self)

        self.rbtn.move(100,100)
        self.rbtn2.move(100,200)
        self.rbtn3.move(100,300)
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

六,菜单

import sys
from PyQt5.QtWidgets import QApplication,QMainWindow

app = QApplication(sys.argv)


class window(QMainWindow):
    def __init__(self):
        super().__init__()
        self.width = 640
        self.height = 400
        self.setGeometry(10,10, self.width, self.height)
        mainMenu = self.menuBar()
        fileMenu = mainMenu.addMenu('File')
        editMenu = mainMenu.addMenu('Edit')
        viewMenu = mainMenu.addMenu('View')
        searchMenu = mainMenu.addMenu('Search')
        toolsMenu = mainMenu.addMenu('Tools')
        helpMenu = mainMenu.addMenu('Help')
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()

七,QSpinBox

完整代码如下(示例):

import sys
from PyQt5.QtWidgets import QApplication,QMainWindow,QRadioButton,QSpinBox

app = QApplication(sys.argv)


class window(QMainWindow):
    mylist="java","C++","python"
    
    def __init__(self):
        super().__init__()
        self.width = 640
        self.height = 400
        self.setGeometry(10,10, self.width, self.height)
        self.sp=QSpinBox(self)


        
        self.show()
if __name__=='__main__':
    w=window()
    app.exec()
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PyQt5是一个Python GUI框架,它基于Qt库,可以用于创建桌面应用程序。以下是一个简单PyQt5教程: 1. 安装PyQt5 在命令行中使用以下命令安装PyQt5: ``` pip install PyQt5 ``` 2. 创建一个窗口 创建一个窗口的代码如下: ```python import sys from PyQt5.QtWidgets import QApplication, QWidget if __name__ == '__main__': app = QApplication(sys.argv) window = QWidget() window.setWindowTitle('Hello PyQt5') window.setGeometry(100, 100, 300, 200) window.show() sys.exit(app.exec_()) ``` 这段代码创建了一个窗口并显示出来。 3. 添加控件 在窗口中添加控件的代码如下: ```python import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QPushButton, QVBoxLayout if __name__ == '__main__': app = QApplication(sys.argv) window = QWidget() window.setWindowTitle('Hello PyQt5') window.setGeometry(100, 100, 300, 200) label = QLabel('Hello PyQt5') button = QPushButton('Click me') layout = QVBoxLayout() layout.addWidget(label) layout.addWidget(button) window.setLayout(layout) window.show() sys.exit(app.exec_()) ``` 这段代码创建了一个标签和一个按钮,并将它们添加到了垂直布局中,然后将布局设置为窗口的主布局。 4. 处理控件事件 处理控件事件的代码如下: ```python import sys from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QPushButton, QVBoxLayout class Window(QWidget): def __init__(self): super().__init__() self.setWindowTitle('Hello PyQt5') self.setGeometry(100, 100, 300, 200) self.label = QLabel('Hello PyQt5') self.button = QPushButton('Click me') self.button.clicked.connect(self.on_button_click) layout = QVBoxLayout() layout.addWidget(self.label) layout.addWidget(self.button) self.setLayout(layout) def on_button_click(self): self.label.setText('Button clicked') if __name__ == '__main__': app = QApplication(sys.argv) window = Window() window.show() sys.exit(app.exec_()) ``` 这段代码创建了一个Window类,它继承自QWidget类,并重写了on_button_click方法来处理按钮点击事件。当按钮被点击时,它会改变标签的文本。 这是一个简单PyQt5教程,希望对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值