访问QLabel文本时出现分段错误

时间:2013-02-16 11:34:44

标签: qt qlabel

我遇到了QLabel的问题。我有一个带QLabel的QtWidget。现在我想用以下代码更改Label的文本:

QLabel* safetyLabel = this->findChild<QLabel *>("safety_bits");

safetyLabel->setText(QString("test"));
printf("%i", (safetyLabel->text()).length());

但我总是得到“分段错误”。我认为这很简单,但我看不到它......

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

如果您使用QtCreators的设计人员在safetyLabel的构造函数中调用NULL之前构建用户界面并执行代码,则ui->setupUi(this);可以是MainWindow

答案 1 :(得分:0)

这是代码。

QLabel *safetyLabel = NULL;
safetyLabel = (QLabel *) this->findChild("safety_bits");
if(!safetyLabel)
{
    qDebug() << "Failed to find safety_bits label!";
    return 1;
}
safetyLabel->setText(QString("safety_bits is here"));