0

我正在创建一个 popuo 窗口,可以更改显示的消息。我有下一节课

class NoPutPort : public QDialog, public Ui::NoPortPut
{
Q_OBJECT;
public:
  NoPutPort(QWidget *parent=0)  {
     setupUi(this);
}

~NoPutPort(void) {}

void putPort(QString a){
    ui.label_2->setText(a);
}

private:
Ui::NoPortPut ui;
};

问题是当我调用 putPort 方法时,应用程序崩溃并且我不知道为什么。如果我放 ui.label_2,它不会崩溃,但是当我访问对象来修改它时,它会崩溃。

任何人都知道如何正确修改标签?

4

1 回答 1

3

你把代码弄乱了。它应该是:

class NoPutPort : public QDialog
{
Q_OBJECT;
public:
  NoPutPort(QWidget *parent=0)  {
     ui.setupUi(this);
}

~NoPutPort(void) {}

void putPort(QString a){
    ui.label_2->setText(a);
}

private:
   Ui::NoPortPut ui;
};

异或

class NoPutPort : public QDialog, public Ui::NoPortPut
{
Q_OBJECT;
public:
  NoPutPort(QWidget *parent=0)  {
     setupUi(this);
}

~NoPutPort(void) {}

void putPort(QString a){
    label_2->setText(a);
}
};
于 2013-08-07T09:36:07.797 回答