4
我正在嘗試製作一個由按鈕和標籤組成的簡單程序。當按下按鈕時,它應該將標籤文本更改爲程序內QString變量的內容。這裏是我到目前爲止的代碼:更改Qt中的標籤
這是我widget.h文件:
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private:
Ui::WidgetClass *ui;
QString test;
private slots:
void myclicked();
};
而這裏的Widget類的實現:
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent), ui(new Ui::WidgetClass)
{
ui->setupUi(this);
test = "hello world";
connect(ui->pushButton, SIGNAL(clicked()), ui->label, SLOT(myclicked()));
}
Widget::~Widget()
{
delete ui;
}
void Widget::myclicked(){
ui->label->setText(test);
}
它運行按鈕被按下時,但是,什麼都沒發生。我究竟做錯了什麼?
編輯:我得到它的工作後,標籤中的文本大於標籤本身,所以文本被剪輯。我通過將添加到myclicked()的定義來修復它。