2009-08-17 31 views
16

我想要一個像Visual Studio或NetBeans中的屬性窗口的小部件。它基本上有兩列:左側屬性的名稱和右側的值。該值需要能夠被限制爲某些類型,如'bool'或'float'(有效範圍),但也應支持更復雜的類型(可能需要點擊時彈出對話框,然後它可以顯示toString()版本,我敢肯定,我可以自己添加大多數這些功能,但是最好的基礎部件是什麼呢?用於屬性窗口的最佳Qt Widget?

哦......屬性的分組也很好(像樹I猜測)。和屬性編輯應該調用回調(發送信號)。

回答

4

QTreeViewQTableView。做一個專門的model繁重,處理所有的類型限制和什麼,而不是所有的(好吧,大部分) 。查看delegates以及

+0

嗯,但如何將模型告訴QTreeView則呈現一個QSpinBox? – paulm 2014-04-22 12:21:53

+0

@ paulm:http://qt-project.org/doc/qt-4.8/qabstractitemdelegate.html#createEditor – 2014-04-22 15:02:00

+0

是不是和setItemWidget一樣?文檔說避免使用它,並使用deletgate,但該模型似乎使用相同的方法來顯示小部件? – paulm 2014-04-22 16:19:35

7

Qt設計器具有完全符合您需要的屬性。它們很可能是用QTreeView實現的。您可以隨時查看源代碼。

qt designer

+2

你的意思是這是Qt Designer程序的一部分?哪個是開源的?我不確定我想挖掘這樣一個龐大的計劃。我只需要一個簡單的例子來看看。< – mpen 2009-08-18 05:45:27