《Qt編程的藝術》——8.1.1 顯示類(The View Classes)

對於數據的可視化,Interview提供了三個拿來就能用的類,我們可以欣賞一下213頁的圖8.5的效果:
 

 
QListView
這個類顯示一位列表(圖8.5中左上角的),它還有一個圖標模式(icon mode),顯示所有條目按照圖標來佈置(如圖8.5的右上角)。
 
QTreeView
這個類按照樹的形式來顯示列表(如圖8.5的左下角),較之QListView要更加詳盡。除此之外,這個類可以顯示多個列,QListView做不到這一點。
 
QTableView
這個類能將數據顯示在表格裏(如圖8.5右下角)。在圖中最頂端和側邊是行和列的標頭(heading),可以分別自定義。
 
除此之外,QHeaderView類提供了標題行,支持QTreeList類和QTableView類中的行和列。這個類不單獨作爲一個view來使用,但是你可以按照自己的需求來調整它,並將它應用在QTreeView和QTableView實例中去。
 
這些views都繼承自QAbstractItemView類,它是Interview中所有view的基類。如果你仔細看一下圖8.3中類的繼承關係,你會發現QAbstractView類並直接繼承自QWidget,而是繼承自QAbstractScrollArea類,這個類可以提供嵌有Widget的Widget。
 
這個內嵌的Widget,叫做viewport,它可以比包裹它的widget大上許多倍。框架控件(frame widget)顯示橫向或縱向的滾動條。按照這種方式,view可以利用更多空間來顯示數據,而不是實際申請到的空間;當然,用戶必須要使用滾動條在viewport中定位。
 

 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章