【发布时间】:2019-07-11 10:13:23
【问题描述】:
我有很多选项卡,它们只包含一个 QTextEdit 元素,我需要阅读 QTextEdit 的当前选项卡文本。 有可能实现吗?
#!/depot/Python-2.7.6/bin/python
import sys,os,copy,re,subprocess
from PyQt4.QtGui import *
from PyQt4.QtCore import *
class Tool(QWidget):
def __init__(self,parent=None):
super(Tool, self).__init__(parent)
self.tabs = QTabWidget()
self.tabs.setTabsClosable(True)
self.tabs.isMovable()
self.initUI()
def help_func(self):
new_tab = QWidget()
text = QTextEdit(self)
text.setReadOnly(True)
text.setLineWrapMode(QTextEdit.NoWrap)
text.setText("some text")
TextBoxlayout = QVBoxLayout()
TextBoxlayout.addWidget(text)
new_tab.setLayout(TextBoxlayout)
self.tabs.addTab(new_tab,str(self.tabs.count()))
self.tabs.setCurrentIndex(self.tabs.count()-1)
def initUI(self):
Tool.help_func(self)
Tool.help_func(self)
Tool.help_func(self)
grid = QGridLayout(self)
grid.addWidget(self.tabs,0,0)
self.setLayout(grid)
我希望在标签更改信号上打印 QTextEdit 文本。
【问题讨论】:
-
使用QTabWidget的currentWidget()方法?
-
使用
your_tabwiget.currentWidget().toPlainText() -
your_tabwiget.currentWidget() 返回没有 toPlainText() 方法的 QWidget 对象
标签: python python-2.7 pyqt4 qtextedit qtabwidget