在QTableWidget内设置QComboBox的当前索引

问题描述 投票:0回答:1

我在QComboBox中有QTableWidget。它是这样创建的:

QComboBox* bb = new QComboBox(this);
ui->propsWidget->setCellWidget(1, 0, bb);
for (...)
    bb.addItem(...);

我需要以编程方式设置其索引。我已经试过了:

QComboBox* bb = qobject_cast<QComboBox*>(ui->propsWidget->cellWidget(1, 0));
bb->setCurrentIndex(5);

和此:

bb->setEditText("mytext"); // "mytext" is contained in bb

但是当前索引没有改变。我该怎么办?

c++ qt qt4
1个回答
0
投票

您需要修改以下行:QComboBox* bb = new QComboBox(this);,因为QTableWidget拥有其所有子组件的所有权。因此,它必须变为QComboBox* bb = new QComboBox();,并且父级将成为单独的表。

© www.soinside.com 2019 - 2024. All rights reserved.