2011-08-02 7 views
0

質問は二回尋ねた:私はこの単純な作業与えられた私はQtののframworkに新しいですHandling multiple ui files in Qt制御する複数のUIファイルが

を参照してください:メインウィンドウで

を、私は送信ボタンを持っていますそのクリックされた別の総別のウィンドウが

を表示されますと、私はFrom.uiファイルと呼ばれ、一度提出をフォームにメインウィンドウから切り替えるには1つの余分UIファイルを実行してこれを行うと考えクリックすると、これは私のコードです:

//main.cpp 
#include "mainwindow.h" 

#include <QtGui/QApplication> 

int main(int argc, char *argv[]) 
{ 
    QApplication app(argc, argv); 

    MainWindow mainWindow; 
    mainWindow.setOrientation(MainWindow::ScreenOrientationAuto); 
    mainWindow.showExpanded(); 

return app.exec(); 
} 



//MainWindow.cpp 
#include "mainwindow.h" 
#include "ui_mainwindow.h" 
#include "form.h" 
#include <QtCore/QCoreApplication> 

MainWindow::MainWindow(QWidget *parent) 
    : QMainWindow(parent), ui(new Ui::MainWindow) 
{ 
    ui->setupUi(this); 

} 

MainWindow::~MainWindow() 
{ 
    delete ui; 
} 

void MainWindow:: SubmitClicked() 
{ 
    Form* f= new Form(this); 
     f->show(); 
     f->raise(); 
     f->activateWindow(); 
} 




//Form.cpp 
#include "form.h" 
#include "ui_form.h" 

Form::Form(QWidget *parent) : 
    QWidget(parent), 
    ui(new Ui::Form) 
{ 
    ui->setupUi(this); 
} 

Form::~Form() 
{ 
    delete ui; 
} 

このコードは完全コンパイルが、期待通りのはやっていない、一度提出をクリックすると、何も...

に行われていない、あなたはいただきました!間違った教えてくださいできますか?

+0

なぜこの質問を2回お願いしましたか? (オリジナルはhttp://stackoverflow.com/questions/6900147/handling-multiple-ui-files-in-qtにあります)元の質問を更新したい場合は、そこに行き、 'edit'をクリックしてください。 – TonyK

答えて

1

SubmitClickedスロットは必ず、それが呼び出されたことを確認するためにあなたのSubmitClicked方法の上部にCOUT/printfのを入れて、ボタン

のクリックイベントに接続されていないようです。

+0

ヒントありがとうございました、それはヘッダーファイルで何かを混乱させたので、SubmitClickedは呼び出されませんでした。とにかく私はもう一つの問題があります。Form.uiが表示されていますが、mainWindonの上に、表示するには、どうすればMainWindowを閉じることができますか?事前に感謝 – karim

+0

このようなものを試してください:Form * f = new Form(); //親なしのフォームを作成します。 f-> show(); //新しいフォームを表示します。 this-> close(); //メインフォームを閉じます –

+0

ありがとうございました:D完璧に働いていました:D:D – karim