pra*_*ran 1 c++ user-interface qt
我有一个带按钮的小部件.我想,每按一下按钮,就会在小部件中添加一个标签.我给出了下面的代码,但是没有用.我不知道为什么.来人帮帮我?
class EditThingsWindow:public QWidget
{
Q_OBJECT
QPushButton * add;
public:
EditThingsWindow();
public slots:
void addButtonClicked();
};
EditThingsWindow::EditThingsWindow():QWidget()
{
QWidget* wid = this;
wid->resize(400,400);
add=new QPushButton(wid);
add->setText("Add");
add->move(20,10);
line=new QLineEdit(wid);
line->move(30,50);
QObject::connect(add,SIGNAL(clicked()),this,SLOT(addButtonClicked()));
}
void EditThingsWindow::addButtonClicked()
{
QLabel* label = new QLabel(this);
label->move(200,160);
label->setText(";;;;;;;;;;;;;;");
}
Run Code Online (Sandbox Code Playgroud)
每次单击按钮时,都会在EditThingsWindow中添加新的QLabel.但是,由于标签没有放置在布局中,并且它们都在相同的位置移动了相同的文本(因此大小相同),它们都显示在彼此的顶部,而你只能看到顶部的一个,这可能就是为什么你认为它们没有被添加.
将一个布局添加到EditThingsWindow小部件,并将每个新的QLabel添加到布局,您将看到所有标签出现.
| 归档时间: |
|
| 查看次数: |
2302 次 |
| 最近记录: |