qt create 如何在一个tabwidget下调用另个UI中的一个tableview类表实现
时间: 2023-11-22 20:54:56 浏览: 108
TabHost内实现多个Activity的跳转
5星 · 资源好评率100%
你可以使用Qt的信号和槽机制来实现这个功能。具体步骤如下:
1. 在你的tabwidget中添加一个QTableView控件。
2. 在你想要调用的另一个UI中的tableview类表的头文件中,添加一个信号,用来将数据传递给主界面的QTableView控件。例如:
```c++
signals:
void sendData(QStandardItemModel* model);
```
3. 在你想要调用的另一个UI中的tableview类表的源文件中,实现sendData()信号。例如:
```c++
void Tableview::sendData(QStandardItemModel* model)
{
emit sendData(model);
}
```
4. 在主界面的源文件中,连接另一个UI的tableview类表的sendData()信号和主界面的QTableView控件的setModel()槽函数。例如:
```c++
connect(ui->tableview, &Tableview::sendData, ui->tableView_main, &QTableView::setModel);
```
5. 当你需要在主界面中调用另一个UI的tableview类表时,在主界面中创建另一个UI的实例,并连接其sendData()信号和主界面的QTableView控件的setModel()槽函数。例如:
```c++
Tableview view;
connect(&view, &Tableview::sendData, ui->tableView_main, &QTableView::setModel);
view.show();
```
这样,当你在另一个UI的tableview类表中更新数据时,数据会被传递给主界面中的QTableView控件,并在主界面中显示。
阅读全文