from PyQt4.QtGui import QTableWidgetItem
class ATableWidgetItem(QTableWidgetItem):
def __init__(self, id, *args, **kwargs):
super(ATableWidgetItem, self).__init__(*args, **kwargs)
self.id = id
a = ATableWidgetItem(0)
b = ATableWidgetItem(0, QTableWidgetItem.UserType)
c = ATableWidgetItem(0, "text", type=QTableWidgetItem.UserType)
class AnotherTableWidgetItem(QTableWidgetItem):
def __init__(self, id):
super(AnotherTableWidgetItem, self).__init__()
self.id = id
d = AnotherTableWidgetItem(0)
class YetAnotherTableWidgetItem(QTableWidgetItem):
def __init__(self, id, text="", type=QTableWidgetItem.Type):
super(YetAnotherTableWidgetItem, self).__init__(text, type)
self.id = id
e = YetAnotherTableWidgetItem(0)
f = YetAnotherTableWidgetItem(0, "Hello")
g = YetAnotherTableWidgetItem(0, "Hello", QTableWidgetItem.UserType)
我想说这取决于你的品味,你认为什么是可读的,以及你想保持你的子类有多灵活。 您可以向构造函数添加所需的任何内容,并将所需内容交给QTableWidgetItem的构造函数。有很多种方法。在可能的情况下,尽量避免阿吉。在
我相信您可以为您的widget项定义尽可能多的构造函数。重写的基本方法是clone。在
Qt有一个演示项目,其中有一个自定义的QTableWidgetItem子代:Spreadsheet,在这里定义了自定义QTableWidgetItem:spreadsheetitem.h
希望这对你有帮助,谢谢
相关问题 更多 >
编程相关推荐