breakthecode
17th March 2015, 23:14
I am trying to get an item from qtableview or specifically a column from the selected row when a raw selected.
this is my code
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("memory");
if (!db.open()) {
QMessageBox::critical(0, qApp->tr("Cannot open database"),
qApp->tr("Unable to establish a database connection.\n"
"This example needs SQLite support. Please read "
"the Qt SQL driver documentation for information how "
"to build it.\n\n"
"Click Cancel to exit."), QMessageBox::Cancel);
//return false;
}
QSqlTableModel *model = new QSqlTableModel;
model->setTable("person");
model->select();
model->setHeaderData(0, Qt::Horizontal, tr("ID"));
model->setHeaderData(1, Qt::Horizontal, tr("Name"));
model->setHeaderData(2, Qt::Horizontal, tr("House Name"));
ui->tableView->setModel(model);
ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows );
ui->tableView->setSelectionMode(QAbstractItemView::SingleSelectio n);
ui->tableView->setEditTriggers(QAbstractItemView::NoEditTriggers) ;
ui->tableView->show();
connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged()), this, SLOT(on_tableViewSelection()));
error shown is
"QObject::connect: No such signal QItemSelectionModel::selectionChanged() in ../CDMS/cdms.cpp:43
QObject::connect: (receiver name: 'CDMS')"
this is my code
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("memory");
if (!db.open()) {
QMessageBox::critical(0, qApp->tr("Cannot open database"),
qApp->tr("Unable to establish a database connection.\n"
"This example needs SQLite support. Please read "
"the Qt SQL driver documentation for information how "
"to build it.\n\n"
"Click Cancel to exit."), QMessageBox::Cancel);
//return false;
}
QSqlTableModel *model = new QSqlTableModel;
model->setTable("person");
model->select();
model->setHeaderData(0, Qt::Horizontal, tr("ID"));
model->setHeaderData(1, Qt::Horizontal, tr("Name"));
model->setHeaderData(2, Qt::Horizontal, tr("House Name"));
ui->tableView->setModel(model);
ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows );
ui->tableView->setSelectionMode(QAbstractItemView::SingleSelectio n);
ui->tableView->setEditTriggers(QAbstractItemView::NoEditTriggers) ;
ui->tableView->show();
connect(ui->tableView->selectionModel(), SIGNAL(selectionChanged()), this, SLOT(on_tableViewSelection()));
error shown is
"QObject::connect: No such signal QItemSelectionModel::selectionChanged() in ../CDMS/cdms.cpp:43
QObject::connect: (receiver name: 'CDMS')"