pyqt5动态载入designer设计的ui

本文介绍了如何使用PySide2在Qt应用中,通过两个文本框间的操作,统计TextEdit中的字符数,并将结果显示在TextBrowser中。首先,实现了一个计算字母数量的功能,然后扩展到处理两个控件之间的数据传递。
摘要由CSDN通过智能技术生成

1文本单词数统计

1首先在qt designer中设计ui
在这里插入图片描述
2在pycharm中如果不想来回查看qtdesigner中信息可以将其转为python文件
pycharm使用qtdesigner
在这里插入图片描述
其后写启动的读取函数,这是一个统计地一个textEdit中字母个数的应用

from PySide2.QtWidgets import QApplication, QMessageBox
from PySide2.QtUiTools import QUiLoader
class Stats:

    def __init__(self):
        # 从文件中加载UI定义

        # 从 UI 定义中动态 创建一个相应的窗口对象
        # 注意:里面的控件对象也成为窗口对象的属性了
        # 比如 self.ui.button , self.ui.textEdit
        self.ui = QUiLoader().load('qt/1.ui')

        self.ui.pushButton.clicked.connect(self.handleCalc)
    def handleCalc(self):
        info = self.ui.textEdit.toPlainText()
        j=0
        for i in info:
            j+=1
        QMessageBox.about(self.ui,"count",str(j))
app = QApplication([])
stats = Stats()
stats.ui.show()
app.exec_()

1在这里插入图片描述

2 文本框1转文本框2

1修改ui,加入一个新的按钮
在这里插入图片描述
此时已经修改了ui,不修改代码重新运行也有同样效果
在这里插入图片描述
此时修改代码

from PySide2.QtWidgets import QApplication, QMessageBox
from PySide2.QtUiTools import QUiLoader
class Stats:

    def __init__(self):
        # 从文件中加载UI定义

        # 从 UI 定义中动态 创建一个相应的窗口对象
        # 注意:里面的控件对象也成为窗口对象的属性了
        # 比如 self.ui.button , self.ui.textEdit
        self.ui = QUiLoader().load('qt/1.ui')

        self.ui.pushButton.clicked.connect(self.handleCalc)
        self.ui.pushButton_2.clicked.connect(self.handleCalc_transfer)
    def handleCalc(self):
        info = self.ui.textEdit.toPlainText()
        j=0
        for i in info:
            j+=1
        QMessageBox.about(self.ui,"count",str(j))

    def handleCalc_transfer(self):
        info = self.ui.textEdit.toPlainText()
        for j in info:
            self.ui.textBrowser.append(j+'\n')
app = QApplication([])
stats = Stats()
stats.ui.show()
app.exec_()

这里append就能添加文本
在这里插入图片描述
效果如上

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值