我有一个类包含不同类型的变量,如下所示.
class Field
{
union DATATYPE
{
int intValue;
double doubleValue;
char* charValue;
MyClass* MyClassValue;
} Value;
~Field()
{
delete[] Value.charValue;
delete Value.MyClassValue;
}
}
Run Code Online (Sandbox Code Playgroud)
这个析构函数给出了错误.由于某些对象没有初始化charValue,因此尝试删除它会引发错误.
基本上,我在 QTableWidget 的每一行都有一个用于单击事件的删除按钮。
如何找到被点击的特定按钮的行索引?
class WidgetGallery(QDialog):
def __init__(self, parent=None):
super(WidgetGallery, self).__init__(parent)
self.table = QTableWidget(10, 3)
col_1 = QTableWidgetItem("first_col")
col_2 = QTableWidgetItem("second_col")
deleteButton = QPushButton("delete_this_row")
deleteButton.clicked.connect(self.deleteClicked)
self.table.setItem(0, 0, col_1)
self.table.setItem(0, 1, col_2)
self.table.setCellWidget(0, 2, deleteButton)
self.mainLayout = QGridLayout()
self.mainLayout.addWidget(self.table)
def deleteClicked(self):
sender = self.sender()
row = sender.parent().........?
Run Code Online (Sandbox Code Playgroud)