【发布时间】:2014-03-24 19:31:06
【问题描述】:
QTabWidget 有两个选项卡:'A' 和'B'。
还有一个 listWidgetA = QtGui.QListWidget() 我想在“A”和“B”之间共享。
到目前为止,我无法找到将 listWidgetA 分配给两种不同布局的方法。将其分配给一个布局会立即取消分配给另一个布局。我不想创建另一个 QtGui.QListWidget() 因为它会产生很多重复/重复的代码。这是示例。想知道这种情况是否有解决方案会很有趣。
from PyQt4 import QtGui, QtCore
import sys, os
class Dialog_01(QtGui.QMainWindow):
def __init__(self):
super(QtGui.QMainWindow,self).__init__()
myTabWidget = QtGui.QTabWidget()
QGroupBoxA = QtGui.QGroupBox()
QHBoxLayoutA = QtGui.QHBoxLayout()
QGroupBoxA.setLayout(QHBoxLayoutA)
myTabWidget.addTab(QGroupBoxA,' Tab A ')
listWidgetA = QtGui.QListWidget()
for i in range(12):
QtGui.QListWidgetItem( 'Item '+str(i), listWidgetA )
QHBoxLayoutA.addWidget(listWidgetA)
QGroupBoxB = QtGui.QGroupBox()
QHBoxLayoutB = QtGui.QHBoxLayout()
QGroupBoxB.setLayout(QHBoxLayoutB)
# QHBoxLayoutB.addWidget(listWidgetA)
myTabWidget.addTab(QGroupBoxB,' Tab B ')
self.setCentralWidget(myTabWidget)
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
dialog_1 = Dialog_01()
dialog_1.show()
dialog_1.resize(480,320)
sys.exit(app.exec_())
【问题讨论】:
-
AFAIK 每个小部件只能有一个父级。
-
有什么办法解决它?一定有办法解决的。
标签: python pyqt qtabwidget