不会出现与PushButton关联的QLabel

时间:2017-09-06 12:38:40

标签: c++ qt

当我按下QLabel时,我正在尝试构建一个我想要显示的QPushButton;代码很简单:

    void Mod28::on_pushButton_clicked()
    {
       AddItem();
    }
    void Mod28::AddItem()
    {
       QLabel *label_n = new QLabel(this);
       label_n->setObjectName(QStringLiteral("label_n"));
       label_n->setGeometry(QRect(20, DimVert, 25, 17));
       label_n->setFrameShape(QFrame::Box);
       label_n->setNum(ItemCounter);
     }

什么都没有出现。相反,如果我将AddItem()放在以下内容中:

    Mod28::Mod28(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Mod28)
    {
        ui->setupUi(this);
        AddItem(); // here, for example, is ok !!!!
    }

我该如何解决?当我按下按钮时,我需要出现QLabel

2 个答案:

答案 0 :(得分:3)

将标签添加到要在其中显示的小部件中。

例如,这一行将lable添加到centralWidget布局:

ui->centralWidget->layout()->addWidget(label_n);

你的职能:

void Mod28::AddItem()
{
   QLabel *label_n = new QLabel(this);
   //
   //
   //
   ui->centralWidget->layout()->addWidget(label_n);
}

答案 1 :(得分:-1)

尝试之后致电label_n->show (); label_n->raise();