21,469
社区成员
发帖
与我相关
我的任务
分享
connect(ui->btnCombox, &QPushButton::clicked, this, [=](){
QSqlQueryModel *fModel = new QSqlQueryModel(this);
fModel->setQuery("select * from t_test1");
QTableView *tableView = new QTableView(this);
tableView->setModel(fModel);
tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
tableView->setSelectionMode(QAbstractItemView::SingleSelection);
ui->comboBox->setView(tableView);
ui->comboBox->setModel(fModel);
ui->comboBox->setCurrentIndex(-1);
});
把QComboBox与QTableView绑定后,
1)如何指定显示的列呢?这里默认只能显示默认第一列FitemID,如何设置成显示FName列
2)显示FName列后,要取QComboBox,如何取对应的FitemID?
//通过该方法解决
QSqlQueryModel *model = (QSqlQueryModel*)ui->comboBox->model();
int i = ui->comboBox->currentIndex();
qDebug() << "key=" << model->record(i).value(0).toString();