web-dev-qa-db-ja.com

QTでメインウィンドウから別のウィンドウを表示する方法

プラットフォーム:QT、Windows XP

Qtは初めてです。 mainwindowから別のウィンドウ(ダイアログとして開くにはどうすればよいか)を表示したい。やった "add New Item ->Qt Designer Form Class "、名前はMyWindowと言います。しかし、MyWindowからこのmainwindowを表示する方法は?

29
Samir
  1. 新しいウィンドウを開くQMainWindowにスロットを実装し、
  2. QMainWindowにウィジェットを配置し、
  3. このウィジェットからの信号をQMainWindowのスロットに接続します(たとえば、ウィジェットがQPushButtonの場合、信号click()を作成したQMainWindowカスタムスロットに接続します)。

コード例:

MainWindow.h

// ...
include "newwindow.h"
// ...
public slots:
   void openNewWindow();
// ...
private:
   NewWindow *mMyNewWindow;
// ...
}

MainWindow.cpp

// ...
   MainWindow::MainWindow()
   {
      // ...
      connect(mMyButton, SIGNAL(click()), this, SLOT(openNewWindow()));
      // ...
   }
// ...
void MainWindow::openNewWindow()
{
   mMyNewWindow = new NewWindow(); // Be sure to destroy your window somewhere
   mMyNewWindow->show();
   // ...
}

これは、カスタムの新しいウィンドウを表示する方法の例です。これを行うには多くの方法があります。

54