【发布时间】:2009-08-21 05:03:37
【问题描述】:
我有下面的代码,我打算在同一个“导入”中创建几个类。我希望实例化每个类并使用我正在制作的小部件获得返回值。
这根本不是一个真正的 PyQt 问题,更像是一个“良好实践”问题,因为我将为每个小部件设置一个类。
我应该创建返回已创建小部件的函数吗?如果可以,应该怎么做?如果这是我所追求的最佳方法,我如何确保很难直接实例化该类?
我希望能够做类似 ....
tabs = wqTabWidget( ['firstTab', 'Second', 'Last Tab'] )
或(哪个是更好的做法)
tabs = wqInstance.createTabs( ['firstTab', 'Second', 'Last Tab'] )
到目前为止,这是我的课......
from PyQt4 import QtCore as qc
from PyQt4 import QtGui as qg
class wqTabWidget(qg.QTabWidget):
def __init__(self, *args):
apply(qg.QTabWidget.__init__,(self, ))
tabList = []
tabNames = args[0]
for name in tabNames:
tabWidget = qg.QWidget()
self.addTab(tabWidget, name)
tabList.append( { name:tabWidget } )
print 'hi'
if __name__ == '__main__':
app = qg.QApplication(sys.argv)
window = wqTabWidget(['hi', 'there', 'and', 'stuff'])
window.show()
app.exec_()
【问题讨论】: