2010-06-02 60 views
1

我目前正在嘗試進入QT4併爲自己弄出一個工作流程。QT4設計器 - 實現控件

嘗試創建允許用戶連接到主機名:端口的小部件時,出現了一些問題。該小部件本身包含一個用於輸入主機名的LineEdit,一個用於輸入端口的SpinBox和一個應該發出連接(QString主機名,unsigned int端口)信號的PushButton。

在QTDesigner中,我創建了必要的表單。它被保存爲一個.ui文件。現在最大的問題是我如何實現這個小部件? QTDesigner中有沒有可以將我的信號添加到Widget中的地方?我可以在哪裏添加自定義屬性?

我在另一個教程中瞭解到,該教程展示瞭如何在C++中創建Widget,如何定義信號,插槽,Q_PROPERTIES等並將其添加到窗口小部件中。但QTDesigner中沒有源代碼。

另一種選擇是使用uic生成源代碼。但標題中說,另一個生成將覆蓋對源文件的任何更改。

那麼,如何通過使用QTDesigner創建UI,並且無需在UI發生變化時重新編碼所有內容來完全使用自己的信號,插槽和屬性創建QT窗口小部件。是否有某種往返工程?

如果這是不可能的:那麼用QTDesigner創建Widget有什麼意義呢?

回答

1

我想我自己找到了答案。 (爲什麼需要通過教程等2-3小時的閱讀,直到我放棄並問在Stackoverflow的問題,然後5分鐘後繼續搜索,我自己找到解決方案?-.-)

我認爲章節QT文檔描述瞭如何以可用的方式在自己的小部件中使用uic生成的文件。 http://doc.qt.nokia.com/4.0/porting4-designer.html#uic-output

我的下一步將是使用第二種方法來創建一個具有我需要的信號和屬性的Widget。

+0

「然後5分鐘後繼續搜索,我自己找到解決方案嗎?」隨時都會發生在我身上*。我想這是因爲寫下這個問題會迫使你以不同的方式思考,並且經常會有所幫助。 – ereOn 2010-06-02 11:24:23