日志
QListView 和 QStackedWidget 配合使用
2017-10-19 19:56
新建三个DIALOG ,在MAINWINDOW 上用QCREATER 拖一个stackedwidget ,把里面的page全删除。默认有两个的。否则addwidget()会从第三个开始添加。
stackedWidget = new QStackedWidget(this); stackedWidget = ui->stackedWidget; stackedWidget->setFrameStyle(QFrame::Panel); basicInfo = new BasicInformation; subsidence = new Subsidence; foundation = new Foundation; stackedWidget->addWidget(basicInfo); // subsidence 规范法 subsidence = new Subsidence(this); stackedWidget->addWidget(subsidence); //foundation 单桩承载力 stackedWidget->addWidget(foundation); stackedWidget->setCurrentWidget(subsidence); void MainWindow::on_listView_clicked(const QModelIndex &index){ QString listString = index.data(Qt::DisplayRole).toString(); if (listString.contains("基本信息")){ stackedWidget->setCurrentWidget(basicInfo); } if (listString.contains("规范法")){ //沉降计算 stackedWidget->setCurrentWidget(subsidence); } if (listString.contains("单桩承载力")){ stackedWidget->setCurrentWidget(foundation); } } |