-
Notifications
You must be signed in to change notification settings - Fork 7
/
ch08-00.htm
58 lines (43 loc) · 3.19 KB
/
ch08-00.htm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!DOCTYPE html>
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="content-type">
<title>ch08-00</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="thumbnailviewer.css" type="text/css" />
<script src="thumbnailviewer.js" type="text/javascript">
/***********************************************
* Image Thumbnail Viewer Script- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/
</script>
</head>
<div class="os1">第8章 基于条目的控件</div>
<br />
本章基于条目的控件(Item-Based Widgets)是指列表控件 QListWidget、表格控件 QTableWidget 和树形控件 QTreeWidget,这些控件的特点是都用于显示由数据单元(或叫条目 item)组成的数据合集。
列表控件的每一行都对应一个数据单元,即 QListWidgetItem 对象。
表格控件根据行号和列号定位到单元格,单元格对应的就是 QTableWidgetItem 对象。
树形控件每个树形节点对应一个数据单元,对应 QTreeWidgetItem 对象。
本章三种基于条目的控件是相互独立的,各自都有自己的数据单元类,也就是对应不同的数据模型。
以后章节会学到模型和视图框架,会有更通用的、更抽象的视图类,就是本章三个控件各自的基类,到时候多种视图可以呈现同一个数据模型。
<br />
<br />
本章 8.1 节介绍最常用的列表控件 QListWidget 和它的数据条目 QListWidgetItem,列表控件的条目只有一列,可以有很多行。<br />
8.2 节介绍表格控件 QTableWidget 和它的单元格 QTableWidgetItem,表格控件一般有多行多列,可以设置表头。<br />
8.3 节介绍树形控件 QTreeWidget 和它的树形节点 QTreeWidgetItem,树形控件节点可以有多层、多个子节点,如果将子节点全部展开,那么一行就是一个数据条目。树形控件从行排布来看有点像列表控件,只是各行之间有父子、兄弟等关系,另外每个树形节点都可以有多个属性,这些属性呈现出来可以看到有多列属性信息,又有点像表格控件,比较复杂,因此作为第三个讲解。
<br />
8.4 节介绍基于条目控件的自定义特性,比如这些控件之间条目的拖拽,为控件设置右键菜单,以及利用样式表修改控件的外观等。
<br />
<br />
<br />
<table style="text-align: left; width: 100%;" border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="width: 40%;"><div style="text-align: center;"><a href="ch07-05.htm"><img class="pic" style="width: 32px; height: 32px;" alt="prev" src="images/pics/prev.png" /></a></div></td>
<td style="width: 20%;"><div style="text-align: center;"><a href="contents.htm"><img class="pic" style="width: 32px; height: 32px;" alt="contents" src="images/pics/contents.png" /></a></div></td>
<td style="width: 40%;"><div style="text-align: center;"><a href="ch08-01.htm"><img class="pic" style="width: 32px; height: 32px;" alt="next" src="images/pics/next.png" /></a></div></td>
</tr>
</tbody>
</table>
</html>