我几乎是Qt的初学者。无论如何,一旦按下按钮,我正在尝试使用信号和插槽来显示小部件。我创建了小部件,并且完成了connect()这一切,但是我在SLOT()中添加了什么呢?我试过show(小部件),但说实话,我不知道该放什么。
答案 0 :(得分:6)
QWidget
有一个名为show()的公共广告位。您可以将按钮的clicked()信号连接到小部件的show()广告位。 Read more about signals and slots here
示例:
QPushButton *button = new QPushButton(this);
QWidget *widget = new QWidget(this);
widget->setWindowFlags(Qt::Window);
connect(button, SIGNAL(clicked()), widget, SLOT(show()));
您也可以创建自己的广告位并从那里拨打widget->show()
。然后将按钮的clicked()
信号连接到您的插槽。
示例:
//myclass.h
...
public:
QWidget *myWidget;
public slots:
void mySlot();
//myclass.cpp
...
connect(button, SIGNAL(clicked()), this, SLOT(mySlot()));
...
void MyClass::mySlot()
{
myWidget->show();
}