Qpushbutton信号和插槽

时间:2013-08-22 06:27:39

标签: qt show slot qpushbutton

我几乎是Qt的初学者。无论如何,一旦按下按钮,我正在尝试使用信号和插槽来显示小部件。我创建了小部件,并且完成了connect()这一切,但是我在SLOT()中添加了什么呢?我试过show(小部件),但说实话,我不知道该放什么。

1 个答案:

答案 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();
}