第1章 基本概念 2
1-1认识GUI和tkinter 2
1-2建立窗口 3
1-3窗口属性的设置 3
1-4窗口位置的设置 5
1-5认识tkinter的Widget 7
1-5-1tkinter的Widget 7
1-5-2加强版的tkinter模块 8
1-6Widget的共同属性 9
1-7Widget的共同方法 9
第2章 标签Label 12
2-1标签Label的基本应用 12
2-2Widget共同属性Color 14
2-3Widget的共同属性Dimensions 15
2-4Widget的共同属性Anchor 15
2-5Label文字输出换行位置wraplength 17
2-6Widget的共同属性Font 17
2-7Label的justify参数 18
2-8Widget的共同属性Bitmaps 20
2-9compound参数 20
2-10Widget的共同属性relief 22
2-11标签文字与标签区间的间距padx/pady 22
2-12图像Photolmage 23
2-13Widget的共同方法config() 27
2-14Widget的共同属性Cursors 28
2-15Widget的共同方法keys() 29
2-16分隔线Separator 30
第3章 窗口控件配置管理员 33
3-1Widget Layout Manager 33
3-2pack方法 33
3-2-1side参数 33
3-2-2padx/pady参数 37
3-2-3ipadx/ipady参数 40
3-2-4anchor参数 41
3-2-5fill参数 42
3-2-6expand参数 45
3-2-7pack的方法 47
3-3grid方法 48
3-3-1row和column 48
3-3-2columnspan参数 50
3-3-3rowspan参数 51
3-3-4padx和pady参数 52
3-3-5sticky参数 53
3-3-6grid方法的应用 55
3-3-7rowconfigure()和columnconfigure() 56
3-4place方法 58
3-4-1x/y参数 58
3-4-2width/height参数 59
3-4-3relx/rely参数与relwidth/relheight参数 60
3-5Widget控件位置总结 62
第4章 功能按钮Button 64
4-1功能按钮基本概念 64
4-2使用Lambda表达式 68
4-3建立含图像的功能按钮 69
4-4简易计算器按钮布局的应用 70
4-5设计鼠标光标在功能按钮上的形状 72
第5章 文本框Entry 74
5-1文本框Entry的基本概念 74
5-2使用show参数隐藏输入的字符 75
5-3Entry的get()方法 77
5-4Entry的insert()方法 79
5-5Entry的delete()方法 80
5-6计算数学表达式使用eval() 81
第6章 变量类别 84
6-1变量类别的基本概念 84
6-2get()与set() 84
6-3追踪trace()使用模式w 86
6-4追踪trace()使用模式r 88
6-5trace()方法调用的callback方法参数 89
6-6计算器的设计 90
第7章 选项按钮与复选框 94
7-1Radiobutton选项按钮 94
7-1-1选项按钮的基本概念 94
7-1-2将字典应用在选项按钮上 97
7-1-3盒子选项按钮 98
7-1-4建立含图像的选项按钮 99
7-2Checkbutton复选框 101
7-2-1复选框的基本概念 101
7-3简单编辑程序的应用 105
第8章 容器控件 108
8-1框架Frame 108
8-1-1框架的基本概念 108
8-1-2在框架内创建Widget控件 110
8-1-3活用relief属性 110
8-1-4在含raised属性的框架内创建复选框 111
8-1-5额外对relief属性的支持 112
8-2标签框架LabelFrame 113
8-2-1标签框架的基本概念 113
8-2-2将标签框架应用于复选框 115
8-3顶层窗口Toplevel 116
8-3-1Toplevel窗口的基本概念 116
8-3-2使用Toplevel窗口仿真对话框 117
第9章 与数字有关的Widget 120
9-1Scale的数值输入控制 120
9-1-1Scale的基本概念 120
9-1-2取得与设置Scale的尺度值 122
9-1-3使用Scale设置窗口背景颜色 123
9-1-4askcolor()方法 125
9-1-5容器的应用 126
9-2Spinbox控件 127
9-2-1Spinbox控件基本概念 127
9-2-2get()方法的应用 129
9-2-3以序列存储Spinbox的数值数据 130
9-2-4非数值数据 131
第10章 Message与Messagebox 133
10-1Message 133
10-1-1Message的基本概念 133
10-1-2使用字符串变量处理text参数 134
10-2Messagebox 135
第11章 事件和绑定 141
11-1Widget的command参数 141
11-2事件绑定 142
11-2-1鼠标绑定的基本应用 145
11-2-2键盘绑定的基本应用 147
11-2-3键盘与鼠标事件绑定的陷阱 148
11-3取消绑定 149
11-4一个事件绑定多个事件处理程序 151
11-5Protocols 152
第12章 列表框Listbox与滚动条Scrollbar 154
12-1建立列表框 154
12-2建立列表框项目insert() 155
12-3Listbox的基本操作 159
12-3-1列出列表框的选项数量size() 159
12-3-2选取特定索引项selectionset() 160
12-3-3删除特定索引项delete() 161
12-3-4传回指定的索引项get() 163
12-3-5传回所选取项目的索引curselection() 164
12-3-6检查指定索引项是否被选取selection includes() 165
12-4Listbox与事件绑定 165
12-4-1虚拟绑定应用于单选 165
12-4-2虚拟绑定应用于多选 167
12-5活用加入和删除项目 168
12-6Listbox项目的排序 170
12-7拖曳Listbox中的项目 171
12-8滚动条的设计 173
第13章 OptionMenu与Combobox 177
13-1下拉式列表OptionMenu 177
13-1-1建立基本的OptionMenu 177
13-1-2使用元组建立列表项目 178
13-1-3建立默认选项set() 178
13-1-4获得选项内容get() 179
13-2组合框Combobox 180
13-2-1建立Combobox 180
13-2-2设置默认选项current() 181
13-2-3获得目前选项get() 182
13-2-4绑定Combobox 183
第14章 容器PanedWindow和Notebook 186
14-1PanedWindow 186
14-1-1PanedWindow基本概念 186
14-1-2插入子控件add( ) 186
14-1-3建立LabelFrame当作子对象 187
14-1-4tkinter.ttk模块的weight参数 188
14-1-5在PanedWindow内插入不同控件 190
14-2Notebook 191
14-2-1Notebook基本概念 191
14-2-2绑定选项卡与子控件内容 192
第15章 进度条Progressbar 195
15-1Progressbar的基本应用 195
15-2Progressbar动画设计 196
15-3Progressbar的方法start()/step()/stop() 198
15-4indeterminate模式 200
第16章 菜单Menu和工具栏Toolbars 202
16-1菜单Menu设计的基本概念 202
16-2tearoff参数 204
16-3菜单列表间加上分隔线 205
16-4建立多个菜单的应用 206
16-5Alt快捷键 208
16-6Ctrl+快捷键 210
16-7创建子菜单 211
16-8建立弹出式菜单 212
16-9add-checkbutton() 213
16-10创建工具栏Toolbar 215
第17章 文字区域Text 218
17-1文字区域Text的基本概念 218
17-2插入文字insert() 220
17-3Text加上滚动条Scrollbar设计 221
17-4字形 224
17-4-1family 224
17-4-2weight 225
17-4-3size 227
17-5选取文字 228
17-6认识Text的索引 229
17-7建立书签 232
17-8标签 233
17-9Cut/Copy/Paste功能 236
17-10复原与重复 239
17-11查找文字 241
17-12拼写检查 243
17-13存储Text控件内容 244
17-14新建文档 248
17-15打开文档 249
17-16默认含滚动条的ScrolledText控件 251
17-17插入图像 252
第18章 Treeview 254
18-1Treeview的基本概念 254
18-2格式化Treeview栏位内容 258
18-3建立不同颜色的行内容 260
18-4建立层级式的Treeview 262
18-5插入图像 263
18-6Selection选项发生与事件触发 264
18-7删除项目 266
18-8插入项目 267
18-9双击某个项目 270
18-10Treeview绑定滚动条 271
18-11排序 272
第19章 Canvas 277
19-1绘图功能 277
19-1-1建立画布 277
19-1-2绘制线条create_line( ) 277
19-1-3绘制矩形create_rectangle() 281
19-1-4绘制圆弧create_arc( ) 282
19-1-5绘制圆或椭圆create_oval() 284
19-1-6绘制多边形create_polygon( ) 285
19-1-7输出文字create_text( ) 286
19-1-8更改画布背景颜色 286
19-1-9插入图像create_image( ) 287
19-2鼠标拖曳绘制线条 288
19-3动画设计 289
19-3-1基本动画 289
19-3-2多个球移动的设计 290
19-3-3将随机数应用于多个球体的移动 291
19-3-4消息绑定 292
19-4反弹球游戏设计 293
19-4-1设计球往下移动 293
19-4-2设计让球上下反弹 295
19-4-3设计让球在画布四面反弹 296
19-4-4建立球拍 297
19-4-5设计球拍移动 298
19-4-6球拍与球碰撞的处理 299
19-4-7完整的游戏 301
附录A RGB色彩表 304
附录B 函数或方法索引表 310