ComboBOX retornando o ID do SQLITE
-
bom dia
estou precisando de uma ajuda criei um combox que me retorno o numero do ID do DB, os itens estão vindo corretos o problema que preciso salvar o ID em outro tabela.QSqlQuery query2; query2.prepare("select * from ITEM1"); query2.exec(); for(int i=0;query2.next();i++){ ui->cmb_cargo->addItem(query2.value(1).toString()); }
agradeço desde já
-
Hey @guara2100, seja bem vindo ao Qt Forum.
Pelo que estou entendo, você esta recuperando dados do seu banco e precisa exibi-los em múltiplas views (QComboBox, QTableView or QListView).
Tanto QComboBox quanto QTableView utilizam o padrão MVC, ou seja, isso significa que há uma divisão de poderes (Model, View e Controller). Onde o Model é responsável por gerenciar os dados que precisam ser exibidos na View (QComboBox).
Você poderia criar um único Model e usa-lo em múltiplas views. Veja um exemplo abaixo:
#include <QStandardItemModel> // No cabeçalho do seu arquivo .cpp // no corpo do seu código QSqlQuery query2; query2.prepare("select * from ITEM1"); query2.exec(); QStandardItemModel *model = new QStandardItemModel(this); while(query2.next()){ model->appendRow(new QStandardItem(query2.value(1).toString())); } ui->cmb_cargo->setModel(model); // setModel para combobox // considerando que você esteja utilizando uma QTableView (cmb_id_table) ui->cmb_id_table->setModel(model); // setModel para tableview
Vale ressaltar que você também pode recuperar o Model do seu QComboBox (cmb_cargo) utilizando
ui->cmb_cargo->model();
Possíveis materiais de referências:
https://doc.qt.io/qt-5/model-view-programming.html
https://doc.qt.io/qt-5/qcombobox.html
https://doc.qt.io/qt-5/qstandarditemmodel.html