pyqt将print输出的数据显示在不同的控件中
时间: 2024-04-04 15:31:12 浏览: 20
可以使用QTextEdit控件来显示print输出的数据。下面是一个简单的示例代码:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QTextEdit, QPushButton
class MyWidget(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('Print Output Demo')
# 创建一个QTextEdit控件用于显示print输出的结果
self.text_edit = QTextEdit(self)
self.text_edit.setReadOnly(True)
# 创建一个按钮用于触发print输出
self.button_print = QPushButton('Print', self)
self.button_print.clicked.connect(self.print_output)
# 创建一个垂直布局,并将QTextEdit和QPushButton添加进去
vbox = QVBoxLayout(self)
vbox.addWidget(self.text_edit)
vbox.addWidget(self.button_print)
self.setLayout(vbox)
def print_output(self):
# 重定向标准输出到QTextEdit控件
sys.stdout = self.text_edit
# 执行print语句,输出结果将会显示在QTextEdit控件中
print('Hello World!')
if __name__ == '__main__':
app = QApplication(sys.argv)
widget = MyWidget()
widget.show()
sys.exit(app.exec_())
```
运行上述代码后,点击按钮即可在QTextEdit控件中显示print输出的结果。你可以根据需要将多个QTextEdit控件添加到窗口中,分别显示不同的输出结果。