2013-09-21 57 views
2

我是Qt的初學者 - 希望這將是一個簡單的問題。我對C++有合理的使用經驗,這部分不是問題Qt Creator 2.8.1 Qt 5.1.1 Qt Designer Linux顯示新表格

我的應用程序的目的是做代碼生成,最初是爲類製作頭文件&的實現文件。我非常喜歡Code :: Blocks上的類嚮導,但我認爲我可以做更多。

我有一個主要的widget,它有一個tabWidget &一些lineEdit的&一些pushButtons。要預覽文件中最終會出現的內容,我創建了一個新的表單,並在其中包含一個TextBrowser。新的表單項出現在.pro文件中。

我想按下pushButton時顯示新窗體,&我打算根據主窗口小部件中lineEdit的內容在TextBrowser中編寫文本。

我一直在整個下午查看文檔,但大多數示例都顯示了一個主窗口小部件或一個窗體。我見過類嚮導(這幾乎是我想要做的)的例子,但我寧願使用tabWidget接口。能夠從按鈕打開表單是能夠做到的一件非常基本的事情。

出於某種原因,我QtCreator幫助中的示例頁面沒有顯示任何示例 - 以前的版本有大量示例。不知道爲什麼。

我是否混淆了術語 - 應該有對話框而不是表單?不知道有什麼區別。

如果所有這些都在文檔的某處,我似乎花了好幾個小時的時間來通過它,所以也許有人可以提供一些鏈接 - 這將是很好的道歉。

回答

2

假設你用頭和CPP文件一起創造新的形式是mynewform.h,mynewform.cpp和mynewform.ui

現在包括mynewform.h在主窗口類,

,並創建一個對象類

mynewform myform;

在按鈕的點擊的槽只需要輸入:

myform.show();

myform.exec(); //(如果你想阻止呼叫)

+0

好的感謝那個adnan。窗體變得可見,非常感謝。任何關於如何將文本放入newform的TextBrowser的線索?我的意思是從新窗體訪問mainWidget上的lineEdit,反之亦然。似乎無法從myform對象訪問newform的子項。希望一切都很好:+) – TheIdeasMan

+0

@TheIdeasMan如果你想在mainwindow類中訪問newform的ui元素,你需要在主窗口類中包含ui_mynewform.h,你不能直接做相反的事情,你會需要一個信號插槽機制來做到這一點非常簡單。你可以爲此提出一個新問題,並通過點擊勾號來回答這個問題。 –

+0

好的,謝謝,這工作。我開始瞭解這一點 - 乾杯 – TheIdeasMan