Qt-setText()加载程序

Qt - setText() crahses program

本文关键字:程序 加载 Qt-setText      更新时间:2023-10-16

我正在尝试为用户获取一些文本输入以供进一步使用。为此,我使用了QInputDialog:

bool ok;
QString text = QInputDialog::getText(this, tr("QInputDialog::getText()"),
                                     tr("Your input:"), QLineEdit::Normal,
                                     QDir::home().dirName(), &ok);
if (ok && !text.isEmpty()) {
    textLabel->setText(text);
}

这使我的程序在textLabel->setText(text);行崩溃。如果我注释掉它,它不会崩溃,但text变量保持为空。我错过了什么?非常感谢。

首先,您应该初始化textLabel或为其提供对现有QLabel的引用。

你可以这样初始化它:

textLabel= new QLabel('some text');

另外,有关QLabel构造函数的更多信息,请参阅QLabel文档。