2013-03-06 44 views
1

我想知道是否有可能在一個公共模型上有多個視圖,其中每個視圖的根索引是Qt公共模型中的任意索引? 這可以用某種代理模型來實現嗎?模型的任意索引作爲Qt中視圖的根索引?

E.g. 

source model: 
root 
-A 
    -1 
    -2 
-B 
    -3 
    -4 

Tree View: 
-A 
    -1 
    -2 
-B 
    -3 
    -4 

List View1 (using index A as root): 
-1 
-2 

List View2 (using index B as root): 
-3 
-4 

編輯:所以它似乎我試圖實現的功能可以通過QTreeView.setRootIndex()來實現。不幸的是,QDeclarativeView不提供此功能(還?)。

回答

2

子類QAbstractProxyModel和實施mapTo..mapFrom..方法,以便當視圖的根被請求(無效QModelIndex)期望的在源模型根被返回。