《Qt编程的艺术》——8.1.1 显示类(The View Classes)

对于数据的可视化,Interview提供了三个拿来就能用的类,我们可以欣赏一下213页的图8.5的效果:
 
《Qt编程的艺术》——8.1.1 显示类(The View Classes)_第1张图片
 
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中定位。
 
《Qt编程的艺术》——8.1.1 显示类(The View Classes)_第2张图片
 
 

你可能感兴趣的:(qt)