PyQt5使用

安装Pyqt5

cpp 复制代码
pip install pyqt5-tools

这时候我们使用纯代码实现一个简单的界面

python 复制代码
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton,  QPlainTextEdit

app = QApplication([])

window = QMainWindow()
window.resize(500, 400)
window.move(300, 310)
window.setWindowTitle('这是一个界面')

textEdit = QPlainTextEdit(window)
textEdit.setPlaceholderText("请输入")
textEdit.move(10,25)
textEdit.resize(300,350)

button = QPushButton('确认', window)
button.move(380,80)

window.show()

app.exec_()

信号与槽

不过多介绍概念

定义槽函数

python 复制代码
def handleCalc():
	QMessageBox.about(window,   '确认成功'       )

建立连接

点击信号

python 复制代码
button.clicked.connect(handleCalc)

使用可视化界面编辑UI (Pyside2)

安装

python 复制代码
pip install pyside2 

再对应用户下找到designer.exe

C:\Users\28322\AppData\Local\Programs\Python\Python37\Lib\site-packages\PySide2\designer.exe

打开之后

使用方法跟C++ qt一致 不过多介绍

ui生成之后的使用(两种方法)

1 ui转化为py文件 进行import

pyqt5

python 复制代码
pyuic5 main.ui > ui_main.py

转化完成之后调用

python 复制代码
import sys
from PyQt5 import QtWidgets, uic

from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *

from ui_main import Ui_Form
//ui_main是我转化过来的py文件 Ui_Form转化的类型 我转化的是Ui_Form 可以是Ui_MainWindow 

class MainWindow(QtWidgets.QMainWindow, Ui_Form):
    def __init__(self, *args, obj=None, **kwargs):
        super(MainWindow, self).__init__(*args, **kwargs)
        self.setupUi(self)

app = QtWidgets.QApplication(sys.argv)

window = MainWindow()
window.show()
app.exec()

2 动态调用UI文件

python 复制代码
from PyQt5 import uic

class Stats:

    def __init__(self):
        # 从文件中加载UI定义
        self.ui = uic.loadUi("GUI界面设计.ui")
app = QApplication([])
stats = Stats()
stats.ui.show()//原先是stats现在是stats.ui
app.exec_()

都可以进行界面的显示

内容取自

https://blog.csdn.net/IntMain45/article/details/110205762

相关推荐
SmartRadio7 小时前
CH585M+MK8000、DW1000 (UWB)+W25Q16的低功耗室内定位设计
c语言·开发语言·uwb
rfidunion7 小时前
QT5.7.0编译移植
开发语言·qt
rit84324997 小时前
MATLAB对组合巴克码抗干扰仿真的实现方案
开发语言·matlab
大、男人8 小时前
python之asynccontextmanager学习
开发语言·python·学习
hqwest8 小时前
码上通QT实战08--导航按钮切换界面
开发语言·qt·slot·信号与槽·connect·signals·emit
一只小bit8 小时前
Qt 常用控件详解:按钮类 / 显示类 / 输入类属性、信号与实战示例
前端·c++·qt·gui
AC赳赳老秦8 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
不知道累,只知道类9 小时前
深入理解 Java 虚拟线程 (Project Loom)
java·开发语言
国强_dev9 小时前
Python 的“非直接原因”报错
开发语言·python
YMatrix 官方技术社区9 小时前
YMatrix 存储引擎解密:MARS3 存储引擎如何超越传统行存、列存实现“时序+分析“场景性能大幅提升?
开发语言·数据库·时序数据库·数据库架构·智慧工厂·存储引擎·ymatrix