首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QT-tableview怎么获取某格内容

2013-06-19 
QT--tableview如何获取某格内容?void gz::on_pushButton_2_clicked(){static QSqlQueryModel *model new

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);
}

int currentRow = ui->tableView->currentIndex().row();

热点排行