QT--tableview如何获取某格内容?
void gz::on_pushButton_2_clicked()
{
static QSqlQueryModel *model = new QSqlQueryModel(ui->tableView);
model->setQuery(QString("select * from yggzinfo;"));
int column = model->columnCount(); //获得列数
int row = model->rowCount(); // 获得行数
QModelIndex index = model->index(column,row,QModelIndex());
ui->lineEdit->setText(index);
}
QT? tableview
[解决办法]
你的代码不太安全。我重写了一下:
void gz::on_pushButton_2_clicked()
{
static QSqlQueryModel model(NULL);
model.setQuery(QString("select * from yggzinfo;"));
ui->tableView->setModel(&model);
int column = ui->tableView->currentIndex().column(); //获得当前选中的列数
int row = ui->tableView->currentIndex().row(); // 获得当前选中的行数
//具体到你使用的model,有两种方式获取你想要的数据。最简单是
QVariant currentData = model.data(ui->tableView->currentIndex());
//或者通过record获取。
QSqlRecord currentRecord=model.record(row);
currentData = currentRecord.value(column);
ui->lineEdit->setText(index);
}