如何在QT中显示主窗口的另一个窗口

Sam*_*mir 31 windows qt showdialog

平台:QT,Windows XP

我是Qt的新手.我想显示另一个窗口(如何将其作为对话框打开)mainwindow.我做了" add New Item ->Qt Designer Form Class",命名它说MyWindow.但如何证明这MyWindowmainwindow

Pat*_*ola 55

  1. 在QMainWindow中实现一个插槽,您将在其中打开新窗口,
  2. 在QMainWindow上放置一个小部件,
  3. 将来自此窗口小部件的信号连接click()到QMainWindow的插槽(例如:如果窗口小部件是QPushButton,则将信号连接到您创建的QMainWindow自定义插槽).

代码示例:

MainWindow.h

// ...
include "newwindow.h"
// ...
public slots:
   void openNewWindow();
// ...
private:
   NewWindow *mMyNewWindow;
// ...
}
Run Code Online (Sandbox Code Playgroud)

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();
   // ...
}
Run Code Online (Sandbox Code Playgroud)

这是关于如何显示自定义新窗口的示例.有很多方法可以做到这一点.