Qt PushButton信号和插槽

Con*_*r M 2 qt show slot qpushbutton

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

thu*_*uga 6

QWidget有一个名为show()的公共插槽.您可以将按钮的clicked()信号连接到小部件的show()插槽.了解更多关于这里的信号和槽.

例:

QPushButton *button = new QPushButton(this);
QWidget *widget = new QWidget(this);
widget->setWindowFlags(Qt::Window);
connect(button, SIGNAL(clicked()), widget, SLOT(show()));
Run Code Online (Sandbox Code Playgroud)

您也可以创建自己的插槽并widget->show()从那里拨打电话.然后将按钮的clicked()信号连接到您的插槽.

例:

//myclass.h
...
public:
   QWidget *myWidget;

public slots:
   void mySlot();
Run Code Online (Sandbox Code Playgroud)

 

//myclass.cpp
...
   connect(button, SIGNAL(clicked()), this, SLOT(mySlot()));
...

void MyClass::mySlot()
{
   myWidget->show();
}
Run Code Online (Sandbox Code Playgroud)