首页 > 解决方案 > QTableWidgetItem 做一个,停止编辑的动作

问题描述

我目前从事 pyside2 项目。我使用了一些 QTableWidget,我想知道是否有可能,当我编辑 QTableWidgetItem 时,编辑期间的值是计算的一部分,当我停止编辑时,它会计算要显示的新值。

我已经创建了一个继承自 QTableWidgetItem 的对象“MyQTableWidgetItem”。并且“MyQTableWidgetItem”接受一个对象作为init。

我想像:

class MyObject:
    def  __init__(self, int_1, int_2):
        self.int_1 = int_1
        self.int_2 = int_2
    def  get_total(self):
        return self.int_1 + self.int_2

class MyQTableWidgetItem(QTableWidgetItem):
    def __init__(self, my_object: MyObject):
        self.my_object = my_object
        super(MyQTableWidgetItem, self).__init__(my_object.get_total())

    def on_edit(self):
        # modify only my_object.int_1 and not the entire calcul 
        # (show only my_object.int_1 for editing)

    def on_stop_editing(self): #if needed
        # will display my_object.get_total()

但是我真的不知道怎么做,你能告诉我怎么做吗?

我可以很容易地理解 qt 的 c++ 在 pyside2 上翻译它,所以,如果你对 c++ 有一些想法,我也会接受。

标签: pythonpython-3.xpyside2qtablewidget

解决方案


推荐阅读