QT中怎么把Tableview中一行的信息分别显示到Tableline上去?
就是像TableWidget的这样,如下:introws=ui->tableWidget->currentRow();//获取当前的行数ui->lineEdit->set...
就是像TableWidget的这样,如下:
int rows = ui->tableWidget->currentRow(); //获取当前的行数
ui->lineEdit->setText(ui->tableWidget->item(rows,0)->text());
ui->lineEdit_2->setText(ui->tableWidget->item(rows,1)->text());
ui->lineEdit_3->setText(ui->tableWidget->item(rows,2)->text());
选中Tableview中的信息,并马上分别显示到Tableline中去。 展开
int rows = ui->tableWidget->currentRow(); //获取当前的行数
ui->lineEdit->setText(ui->tableWidget->item(rows,0)->text());
ui->lineEdit_2->setText(ui->tableWidget->item(rows,1)->text());
ui->lineEdit_3->setText(ui->tableWidget->item(rows,2)->text());
选中Tableview中的信息,并马上分别显示到Tableline中去。 展开
1个回答
展开全部
// QTableView配合使用的是QStandIterModel,你可以从这个model里面取数据
QTableView *tableView = new QTableView();
QStandarItermModel *model = new QStandarItemModel();
// 绑定model
tableView->setModel(model);
// 填充数据
model->setData(model->index(row, col), QString("110"));
// 获取数据
model->data(model->index(row, col))->toInt();
追答
上面的代码是手敲的,字母写错了,只是给你个实例,结果~~
// 初始化model
model = new QStandardItemModel(this);
ui->tableView->setModel(model);
model->setRowCount(3);
model->setColumnCount(3);
for (int i = 0; i < 3; i++) {
model->setData(model->index(i, 0), QString("张三"));
model->setData(model->index(i, 1), qrand() % 2 == 1 ? QString("男") : QString("女"));
model->setData(model->index(i, 2), QString::number(qrand() % 10 + 10));
}
// 管理点击
void MainWindow::on_tableView_clicked(const QModelIndex &index)
{
ui->lineEdit->setText(model->data(model->index(index.row(), 0)).toString());
ui->lineEdit_2->setText(model->data(model->index(index.row(), 1)).toString());
ui->lineEdit_3->setText(model->data(model->index(index.row(), 2)).toString());
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询