gpt4 book ai didi

python - 在PyQT中给QPlainTextEdit添加文本(结果是一个状态日志)

转载 作者:太空狗 更新时间:2023-10-30 01:45:05 25 4
gpt4 key购买 nike

我正在尝试构建一个 StatusLog,记录应用程序上发生的每一个 Action 。例如,用户点击了按钮 1,progressBox 必须接收到类似“用户点击了按钮 1”的字符串。

我已经搜索并找到了一个链接,但我不知道如何解决这个问题。

链接:Add more than one line to a QTextEdit PyQt

每次我尝试它都会给我 AttributeError: 'QPlainTextEdit' object has no attribute 'insertText'

from PyQt4 import QtCore, QtGui
import sys, os
from math import ceil
from PyQt4 import QtCore, QtGui, QtNetwork
from qrtools import QR

try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
_fromUtf8 = lambda s: s


class Ui_MainWindow(object):
def setupUi(self, MainWindow):
(..)

#The button
self.groupBoxAuthbtn.setSizePolicy(sizePolicy)
self.groupBoxAuthbtn.setTitle(_fromUtf8(""))
self.groupBoxAuthbtn.setObjectName(_fromUtf8("groupBoxAuthbtn"))
self.horizontalLayout_2 = QtGui.QHBoxLayout(self.groupBoxAuthbtn)
self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
self.btnAuthenticate = QtGui.QPushButton(self.groupBoxAuthbtn)
self.btnAuthenticate.setEnabled(True)
self.btnAuthenticate.setText(QtGui.QApplication.translate("MainWindow", "Auth from Webcam", None, QtGui.QApplication.UnicodeUTF8))
self.btnAuthenticate.setObjectName(_fromUtf8("btnAuthenticate"))
self.horizontalLayout_2.addWidget(self.btnAuthenticate)
self.horizontalLayout.addWidget(self.groupBoxAuthbtn)
#self.btnAuthenticate.clicked.connect(self.handleTest)

(...)

# THE STATUS LOG
self.groupBoxProgress = QtGui.QGroupBox(self.centralwidget)
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.groupBoxProgress.sizePolicy().hasHeightForWidth())
self.groupBoxProgress.setSizePolicy(sizePolicy)
self.groupBoxProgress.setTitle(QtGui.QApplication.translate("MainWindow", "Status", None, QtGui.QApplication.UnicodeUTF8))
self.groupBoxProgress.setAlignment(QtCore.Qt.AlignCenter)
self.groupBoxProgress.setObjectName(_fromUtf8("groupBoxProgress"))
self.verticalLayout_3 = QtGui.QVBoxLayout(self.groupBoxProgress)
self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))

#Progress
self.progressBox = QtGui.QPlainTextEdit(self.groupBoxProgress)
self.progressBox.setPlainText(QtGui.QApplication.translate("MainWindow", "This is the all work report..", None, QtGui.QApplication.UnicodeUTF8))
self.progressBox.setObjectName(_fromUtf8("progressBox"))
self.verticalLayout_3.addWidget(self.progressBox)
self.verticalLayout.addWidget(self.groupBoxProgress)





MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtGui.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 847, 25))
self.menubar.setObjectName(_fromUtf8("menubar"))
self.menuFile = QtGui.QMenu(self.menubar)
self.menuFile.setTitle(QtGui.QApplication.translate("MainWindow", "File", None, QtGui.QApplication.UnicodeUTF8))
self.menuFile.setObjectName(_fromUtf8("menuFile"))
self.menuAbout = QtGui.QMenu(self.menubar)
self.menuAbout.setTitle(QtGui.QApplication.translate("MainWindow", "About", None, QtGui.QApplication.UnicodeUTF8))
self.menuAbout.setObjectName(_fromUtf8("menuAbout"))
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtGui.QStatusBar(MainWindow)
self.statusbar.setObjectName(_fromUtf8("statusbar"))
MainWindow.setStatusBar(self.statusbar)
self.toolBar = QtGui.QToolBar(MainWindow)
self.toolBar.setWindowTitle(QtGui.QApplication.translate("MainWindow", "toolBar", None, QtGui.QApplication.UnicodeUTF8))
self.toolBar.setObjectName(_fromUtf8("toolBar"))
MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
self.actionExit = QtGui.QAction(MainWindow)
self.actionExit.setText(QtGui.QApplication.translate("MainWindow", "Exit", None, QtGui.QApplication.UnicodeUTF8))
self.actionExit.setShortcut(QtGui.QApplication.translate("MainWindow", "Q", None, QtGui.QApplication.UnicodeUTF8))
self.actionExit.setObjectName(_fromUtf8("actionExit"))
self.actionCredits = QtGui.QAction(MainWindow)
self.actionCredits.setText(QtGui.QApplication.translate("MainWindow", "Credits", None, QtGui.QApplication.UnicodeUTF8))
self.actionCredits.setShortcut(QtGui.QApplication.translate("MainWindow", "A", None, QtGui.QApplication.UnicodeUTF8))
self.actionCredits.setObjectName(_fromUtf8("actionCredits"))
self.menuFile.addSeparator()
self.menuFile.addAction(self.actionExit)
self.menuAbout.addAction(self.actionCredits)
self.menubar.addAction(self.menuFile.menuAction())
self.menubar.addAction(self.menuAbout.menuAction())


self.retranslateUi(MainWindow)

QtCore.QObject.connect(self.actionExit, QtCore.SIGNAL(_fromUtf8("activated()")), MainWindow.close)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
MainWindow.setTabOrder(self.btnAuthenticate, self.progressBox)



def retranslateUi(self, MainWindow):
pass

最佳答案

尝试使用 insertPlainText() 代替。 The documentation没有提到 insertText,所以错误非常具有描述性。

关于python - 在PyQT中给QPlainTextEdit添加文本(结果是一个状态日志),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9841820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com