【发布时间】:2015-04-30 19:17:06
【问题描述】:
我正在使用 qt 构建具有多个选项卡的文件编辑器,每个选项卡对应一个文件。在 mainwindow.cpp 我有这个功能:
void MainWindow::on_actionOpen_triggered()
{
QString fileName = QFileDialog::getOpenFileName(this,"Open File","/home",tr("*.ext"));
}
我需要将 fileName 发送到我的选项卡小部件的新选项卡。我知道 qt 中有类的信号和插槽,但我一生都无法弄清楚如何将 QString 发送到特定选项卡。有没有办法将文件名发送到选项卡的创建事件,或者可能使用选项卡的索引来发送信号?
我对 qt 很陌生,但我很确定这应该是一个简单的过程。我就是想不通。
提前致谢!
编辑:完全修改后的代码,两者都作为主窗口的成员:
void MainWindow::on_actionOpen_triggered()
{
if (fileName!=NULL)
{
int curtab=ui->fileTabWidget->addTab(new my_editor,tr("editor"));
ui->fileTabWidget->setCurrentIndex(curtab);
}
}
所以遵循@vizhanyolajos 的指示;如果我将文件名传递到 addTab 的末尾,我需要在哪里添加其余代码以接收它?
我假设在我的自定义编辑器类中。
【问题讨论】:
-
有很多方法。你能添加你的标签创建代码吗?
-
@deW1 在上面添加。如果你也想要类声明,请告诉我。