Pyside6 开发 使用Qt Designer

使用Qt Designer

在Scripts目录下打开pyside6-designer.exe

分别将姓名、年龄、爱好对应的输入框的ObjectName 设置为 uname、uage、ulike

提交按钮Object设置为 btnSubmit

点击保存文件

,命名为student.ui

将.ui文件编程成.py文件

pyside6-uic student.ui -o student.py

python 复制代码
import sys
from PySide6.QtWidgets import QApplication,QWidget
import student


class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.ui = student.Ui_Form()
        self.ui.setupUi(self)


if __name__ == '__main__':
    app = QApplication([])
    win = MyWindow()
    win.show()
    sys.exit(app.exec())

提交按钮,完成提交功能

python 复制代码
import sys
from PySide6.QtWidgets import QApplication,QWidget
from PySide6.QtCore import Slot
import student


class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.ui = student.Ui_Form()
        self.ui.setupUi(self)

    @Slot()
    def on_btnSubmit_clicked(self):
        uname = self.ui.uname.text()
        uage = self.ui.uage.text()
        ulike = self.ui.ulike.text()
        print(uname,uage,ulike)
        with open('student.txt','a+',encoding='utf-8') as f:
            template = f'姓名{uname}--年龄{uage}--爱好{ulike}\n'
            f.write(template)

if __name__ == '__main__':
    app = QApplication([])
    win = MyWindow()
    win.show()
    sys.exit(app.exec())

from PySide6.QtCore import Slot

使用 @Slot 表达这个方法是槽函数。

QMetaObject.connectSlotsByName(Form) 会扫描指定对象(如窗口或控件)中的所有槽函数,并根据命名规则自动连接信号和槽函数。

槽函数的命名格式必须为:on_<objectName>_<signal>

objectName 是对象的名称(通过 setObjectName设置)。

signal是信号的名称。

如上面按钮所示,objectName 为 btnSubmit,并且它的 clicked 信号需要连接到一个槽函数,那么槽函数应该命名为 on_btnSubmit_clicked。

相关推荐
天天进步20152 分钟前
Python全栈项目实战:自建高效多媒体处理工具
开发语言·python
waterHBO7 分钟前
python + fast-wahisper 读取麦克风,实现语音转录,而且是实时转录。
开发语言·python
reasonsummer9 分钟前
【教学类-160-09】20260417 AI视频培训-练习010“豆包AI视频《熊猫找朋友》+豆包图片风格:水墨画”
python·音视频·豆包视频
JaydenAI10 分钟前
[FastMCP设计、原理与应用-15]挂载一个MCP服务器就像挂载一个目录一样容易
python·ai编程·ai agent·mcp·fastmcp
甄心爱学习15 分钟前
【项目实训(个人4)】
前端·vue.js·python
西兰先森16 分钟前
使用Antv G6渲染neo4j知识图谱数据
python·知识图谱·neo4j
weixin_3077791320 分钟前
SparkPySetup:基于Python的Windows 11 PySpark环境自动化搭建工具
大数据·开发语言·python·spark
m0_7381207226 分钟前
渗透基础知识ctfshow——Web应用安全与防护(完结:第八章)
前端·python·sql·安全·web安全·网络安全
雷帝木木32 分钟前
Python 并发编程高级技巧详解:从原理到实践
人工智能·python·深度学习·机器学习
devnullcoffee32 分钟前
亚马逊 Movers and Shakers 数据采集实战:用 Python + Scrape API 构建实时榜单监控系统
python·亚马逊数据采集·scrape api·亚马逊数据 api·pangolinfo api·amazon 爬虫工具·实时榜单监控