2011-04-14 26 views
0

例如,我們可以建立一個用戶界面Qt如下:Qt的 - 建立一個接口

Ui::Dialog ui; 
ui.setupUi(dialog); 

在這裏,我將設置的dialogui的UI。

但是,如果我寫了以下內容:

setupUi(this) 

這是什麼意思?特別是,我沒有設定特定的用戶界面(即ui)。我將如何設置接口?

謝謝。

回答

1

命名空間UI由UIC(ui編譯器)控制。基本上,UI文件是UI內部的描述。要實例化它,您需要告訴它它應該填充哪個小部件。在你的情況下,你明確地告訴它填充「對話框」小部件。

如果你是從QWidget的一類求導裏面,那當然,你可以使用

ui.setupUi(this) 

我不知道我完全理解你的問題,所以覺得免費提供細節,我會完成我的答案。

+0

呵呵,你回答你自己的問題嗎? :) – dimsuz 2011-04-14 14:05:50

+0

不,我只是編輯user588855的inital帖子來添加標籤,我只是不確定要理解這個問題:「這是什麼意思?特別是我沒有指定一個特定的接口(即;用戶界面)。我以這種方式設置界面?「 – Bruce 2011-04-14 14:24:26

+0

啊,對了,錯過了。是的,這個問題可能更加冗長,我同意。缺少一些上下文... – dimsuz 2011-04-14 15:44:05

1

傳遞「dialog」和「this」的區別在於,當你傳遞「dialog」時,你在Qt Designer中創建的UI元素將被放在「dialog」小部件上,而當你通過「this」時,UI元素將被放到這個小部件上(你調用setupUi()的方法的小部件)