我在一个简单的程序中有一个QlineEdit和一个QTableView。
我将一个表(例如person)从SQLite加载到tableView。
我想要一个事件或其他任何东西,当我在lineEdit中键入tableView时会根据它进行更改。
例如,如果表人具有填充的字段名称:
我想按下" m"所有以" m"开头的名字,如mehran,mehsa,mahid show on tableView。当我按下一个键例如" e"时,只有mehran和mehsa在tableView上显示,依此类推。
答案 0 :(得分:1)
您需要像on this signal这样的连接:
connect(lineEdit, &QLineEdit::textChanged, [=](const QString &string) {
QSqlQuery query(QString("SELECT %1 FROM ..").arg(string));
while (query.next()) {
QStringList stringList = query.value(0).toStringList();
updateTableView(stringList);
}
});
此时,您还需要在qmake项目文件中添加以下行以获取新的信号槽语法:
CONFIG += c++11