QTabWidget - 如何单独编辑每个小部件?

时间:2014-08-24 10:40:39

标签: c++ qt qtabwidget

我正在学习Qt和一般的C ++,我仍然坚持这个问题。希望回答很简单。

我有一个QTextEdit由此代码创建:

void MainWindow::on_actionNewtab_triggered()
{
    ui->tabWidget->addTab(new QTextEdit, "Untitled Document");
}

现在,如果我制作三个标签,我不确定如何编辑所选当前标签的QTextBox。我查看了文档(非常好),我认为我需要this,但我不确定如何。我还在此网站上找到了this,但这似乎编辑了所有QTextEdits

答案可能非常简单,我只是遗漏了一些东西:)。如果您需要更多详细信息,请与我们联系。

2 个答案:

答案 0 :(得分:1)

将指针保存到所需的QTextBox并根据需要进行编辑。

QTextEdit *myTextEdit;

void MainWindow::on_actionNewtab_triggered()
{
    myTextEdit = new QTextEdit;
    ui->tabWidget->addTab(myTextEdit, "Untitled Document");
}

您也可以使用QTabWidget::widget()QTabWidget::currentWidget()在创建后获取指向窗口小部件的指针,但您必须先将结果转换为实际类型。

答案 1 :(得分:0)

您可以直接使用以下方式访问文本编辑:

qobject_cast<QTextEdit*>(ui->tabWidget->currentWidget())->SetText("my text");