Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
QTableWidgets中的单元格小部件是否会在清理时被删除?_Qt_Qtablewidget - Fatal编程技术网

QTableWidgets中的单元格小部件是否会在清理时被删除?

QTableWidgets中的单元格小部件是否会在清理时被删除?,qt,qtablewidget,Qt,Qtablewidget,假设我用按钮填充QTableWidget的一些单元格: ui->table->setCellWidget (i, 2, new QPushButton ("Details")); 过了一会儿,我把它们都刮了一遍,然后再做一次: ui->table->clear(); 这个按钮会自动删除吗?或者我需要存储它们的列表并手动删除吗?另外,是否需要为每个按钮指定父级,如下所示:QPushButton(“详细信息”,ui->table)?表格小部件拥有小部件的所有权。缔约国指出

假设我用按钮填充
QTableWidget
的一些单元格:

ui->table->setCellWidget (i, 2, new QPushButton ("Details"));
过了一会儿,我把它们都刮了一遍,然后再做一次:

ui->table->clear();

这个按钮会自动删除吗?或者我需要存储它们的列表并手动删除吗?另外,是否需要为每个按钮指定父级,如下所示:
QPushButton(“详细信息”,ui->table)

表格小部件拥有小部件的所有权。缔约国指出:

设置要在给定行和列的单元格中显示的给定小部件,并将小部件的所有权传递给表

您也不需要在创建时指定父级,这将由tablewidget相应地设置。

它应该同时回答这两个问题吗?“tablewidget拥有widget”表示它将删除它。“tablewidget拥有widget”表示tablewidget将在tablewidget被删除时删除widget。此行为来自QObject AFAIK。问题是当调用
tablewidget->clear()
时,是否会发生这种情况-tablewidget保持活动状态,但表被清除。