2

私はQtの初心者です。とにかく、ボタンが押されると、シグナルとスロットを使用してウィジェットを表示しようとしています。ウィジェットを作成し、connect() はすべて完了しましたが、SLOT() には何を入れればよいでしょうか? 私はショー(ウィジェット)を試してみましたが、正直なところ、そこに何を入れればいいのかわかりません。

4

1 に答える 1

6

QWidgetshow()という公開スロットがあります。ボタンのclicked()シグナルをウィジェットのshow()スロットに接続できます。シグナルとスロットの詳細については、こちらをご覧ください

例:

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();
}
于 2013-08-22T06:54:09.673 に答える