Я пишу «SQLite» базу данных и создать таблицу базы данных, как это:Как заполнить SQLite базы данных tablewidget
void MainWindow::createdata()
{
QSqlQuery query;
query.exec("DROP TABLE messages");
query.exec("CREATE TABLE messages("
"id INTEGER PRIMARY KEY AUTOINCREMENT,"
"IPAddress VARCHAR(20),"
"date VARCHAR(10),"
"message VARCHAR(30))");
query.prepare("INSERT INTO messages(IPAddress, date, message) values(?,?,?)");
query.addBindValue("192.168.1.1");
query.addBindValue("jun 3 2016");
query.addBindValue("hello");
if (query.exec()) {
qDebug() << "ok!";
}
else
{
qDebug() << query.executedQuery();
qDebug() << query.lastError();
}
}
И я создать «QTableWidget», как это:
QTableWidget* table = new QTableWidget();
table->setRowCount(10);
table->setColumnCount(4);
table->setWindowTitle("Received Message");
table->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
table->setHorizontalHeaderLabels(QString("ID;HostAddress;Date;Message").split(";"));
table->setStyleSheet("QTableView {selection-background-color: blue;}");
table->setEditTriggers(QAbstractItemView::NoEditTriggers);
table->setSelectionBehavior(QAbstractItemView::SelectRows);
table->setSelectionMode(QAbstractItemView::SingleSelection);
QSqlQuery query("SELECT * FROM messages");
, но я не знаю, как я должен заполнить «tablewidget» для показа с помощью запроса. Может ли кто-нибудь мне помочь? Спасибо
Вообще самый простой способ для отображения данных базы данных в Qt является корыта модель в этом случае QSqlQueryModel, вот пример: HTTP://www.qtforum.org/article/29669/how-display-sqlite-database-table-in-qtableview.html – Marco
@ Марко: я должен использовать tablewidget :( – Hanita
Изменить босс ;-) – Marco