2009-10-05 13 views
24

Plate-forme: QT, Windows XPComment montrer une autre fenêtre de mainwindow dans QT

Je suis nouveau à Qt. Je veux montrer une autre fenêtre (que faire pour l'ouvrir comme boîte de dialogue) de mainwindow. J'ai fait "add New Item ->Qt Designer Form Class", appelé le MyWindow. Mais comment montrer ce MyWindow de mainwindow?

Répondre

50
  1. Mettre en oeuvre une fente dans votre QMainWindow où vous ouvrez votre nouvelle fenêtre,
  2. Placez un widget sur votre QMainWindow,
  3. Connectez un signal de ce widget à une fente du QMainWindow (par exemple: si le widget est un QPushButton connecter le signal click() au slot personnalisé QMainWindow que vous avez créé).

Exemple de code:

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(); 
    // ... 
} 

Ceci est un exemple sur la façon d'afficher une fenêtre personnalisée nouvelle. Il y a beaucoup de façons de le faire.

Questions connexes