1

我正在尝试创建一个简单的 IDE。此刻我完全失败了!我有一些操作,当我单击“新建”操作时,它应该向我的 TabWidget 添加一个新页面并在其中创建一个 TextEdit。这实际上有效,但我不知道如何使用 TextEdit。例如,如果我想保存它,我需要访问 textEdit 的文本,但如何?

代码:

void MainWindow::on_actionNew_triggered()
{
    QTextEdit* textEdit = new QTextEdit();
    ui->Tabs->addTab(textEdit, "New Tab");
    ui->Tabs->setCurrentIndex( ui->Tabs->count() );
}
4

1 回答 1

1

您需要一些超出范围的变量才能访问它。

textEdit在函数的本地范围内定义。如果您想访问例如 cpp 文件的全局空间,您可以将其定义为

static QTextEdit *textEdit;

在任何功能之外。

一个更好的想法可能是将其定义为MainWindow类的成员变量:

private:
    QTextEdit *m_textEdit;

请记住,分配的内存new是分配给你的delete

于 2013-05-01T21:39:25.043 回答