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

相关推荐
青衫码上行23 分钟前
【从0开始学习Java | 第22篇】反射
java·开发语言·学习
一念&39 分钟前
每日一个C语言知识:C 字符串
c语言·开发语言
0110_10241 小时前
tauri + rust的环境搭建---初始化以及构建
开发语言·后端·rust
会开花的二叉树1 小时前
C++微服务 UserServer 设计与实现
开发语言·c++·微服务
像风一样自由20201 小时前
Rust Tokio vs Go net/http:云原生与嵌入式生态选型指南
开发语言·golang·rust
DuHz1 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
我星期八休息1 小时前
C++智能指针全面解析:原理、使用场景与最佳实践
java·大数据·开发语言·jvm·c++·人工智能·python
大猫会长1 小时前
docker安装php+apache
java·开发语言
道之极万物灭1 小时前
Go小工具合集
开发语言·后端·golang
梵得儿SHI2 小时前
Java 反射机制深度剖析:性能与安全性的那些坑
java·开发语言·安全·反射·动态代理·性能·反射机制