描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302645009
本书主要讲解如何在窗口内使 用 Python 的内部模块 tkinter 设计图形用户接口 (GUI) 程序,让用户可以利用图形接口与计算机沟通。
本书是国内首先使用 Python tkinter 设计 GUI 的中文书籍之一。本书主要讲解如何在窗口内使 用 Python 的内部模块 tkinter 设计图形用户接口 (GUI) 程序,让用户可以利用图形接口与计算机沟通。 tkinter 模块是一个跨平台的窗口应用程序,使用它设计的程序可以在 Windows 、macOS 、Linux 系 统上执行。
2019 年《Python GUI 设计 tkinter 菜鸟编程》一经出版便受到广大读者的喜爱。为了使其内容 更丰富,本书在其基础上增加了一些重要的项目实例,全书超过 312 个程序实例,一步一步讲解 tkinter 控件 (Widget) 的基础知识,同时也将应用范围扩充至小算盘、分形 (Fractal) 设计、文书编 辑、走马灯、模拟海龟绘图、球类竞赛、风扇设计、单个或多个反弹球设计、钟摆、直方图动态排 序、动画与游戏设计、MP3 音乐播放器。Python 是一门可以灵活使用的程序语言,本书的特色是 对 tkinter 最基础的知识使用了大量灵活的实例,说明其在各种环境下的应用方法。读者可以由这些 程序实例,事半功倍地学会用 tkinter 设计跨平台的窗口程序。
第1章?基本概念
1-1 认识GUI和tkinter 2
1-2 创建窗口 2
1-3 窗口属性的设置 3
1-4 窗口位置的设置 4
1-5 认识tkinter的Widget 5
1-5-1?tkinter的Widget 5
1-5-2?加强版的tkinter模块 6
1-6 Widget 的共同属性 7
1-7 Widget 的共同方法 7
第2章?标签Label
2-1 标签Label的基本应用 10
2-2 Widget的共同属性 Color 12
2-3 Widget 的共同属性 Dimensions 12
2-4 Widget 的共同属性 Anchor 12
2-5 Label 文字输出换行位置
wraplength 13
2-6 Widget 的共同属性 Font 14
2-7 Label 的 justify 参数 14
2-8 Widget 的共同属性 Bitmaps 15
2-9 Label的compound参数 16
2-10 Widget 的共同属性 relief? 16
2-11 标签文字与标签区间的间距
padx/pady 17
2-12 图像 PhotoImage 17
2-13 Widget 的共同方法 config( ) 20
2-14 Widget 的共同属性 Cursor 20
2-15 Widget 的共同方法 keys( ) 21
2-16 分隔线 Separator 22
第3章?窗口控件配置管理员
3-1 Widget Layout Manager 24
3-2 pack( )方法 24
3-2-1?side参数 24
3-2-2?padx/pady参数 26
3-2-3?ipadx/ipady参数 28
3-2-4?anchor参数 29
3-2-5?fill参数 29
3-2-6?expand参数 31
3-2-7?pack的方法 33
3-3 grid( )方法 34
3-3-1?row和column参数 34
3-3-2?columnspan参数 35
3-3-3?rowspan参数 35
3-3-4?padx和pady参数 36
3-3-5?sticky参数 37
3-3-6?grid( )方法的应用 38
3-3-7?rowconfigure( )和columnconfigure
( )方法 39
3-4 place( )方法 40
3-4-1?x/y参数 40
3-4-2?width/height参数 41
3-4-3?relx/rely和relwidth/relheight
参数 42
3-5 Widget控件位置的总结 43
第4章?功能按钮 Button
4-1 功能按钮的基本概念 45
4-2 使用Lambda表达式 48
4-3 创建含图像的功能按钮 48
4-4 简易计算器按钮布局的应用 50
4-5 设计光标在功能按钮上的形状 50
第5章?文本框Entry
5-1 文本框Entry的基本概念 53
5-2 使用show参数隐藏输入的字符 54
5-3 Entry的get( )方法 55
5-4 Entry的insert( )方法 57
5-5 Entry的delete( )方法 57
5-6 使用eval( )函数计算数学
?表达式 58
第6章?变量类别
6-1 变量类别的基本概念 61
6-2 get( )和set( )方法 61
6-3 追踪trace( )使用模式w 62
6-4 追踪trace( )使用模式r 64
6-5 trace( )方法调用的callback( )
?参数 65
6-6 计算器的设计 66
6-7 贷款程序设计 67
第7章?单选按钮与复选框
7-1 Radiobutton单选按钮 70
7-1-1?单选按钮的基本概念 70
7-1-2?将字典应用在单选按钮 73
7-1-3?盒子单选按钮 74
7-1-4 创建含图像的单选按钮 74
7-2 Checkboxes复选框 76
7-3 简单编辑程序的应用 79
第8章?容器控件
8-1 框架Frame 82
8-1-1?框架的基本概念 82
8-1-2?在框架内创建 Widget 控件 83
8-1-3?活用relief属性 84
8-1-4?在含 raised 属性的框架内创建
标签和复选框 84
8-1-5?额外对relief属性的支持 85
8-2 标签框架LabelFrame 86
8-2-1?标签框架的基本概念 86
8-2-2?将标签框架应用于复选框 87
8-3 顶层窗口Toplevel 88
8-3-1?Toplevel窗口的基本概念 88
8-3-2?使用Toplevel窗口仿真对话框 89
8-4 框架专题实践 90
8-4-1?将控件放在框架中的组合应用 90
8-4-2?可以更改文字与颜色的
框架应用 91
8-4-3?设计一个容器然后显示
图书封面 92
第9章?与数字有关的Widget
9-1 Scale的数值输入控制 95
9-1-1?Scale的基本概念 95
9-1-2?取得与设置Scale的尺度值 97
9-1-3?使用 Scale 设置窗口背景颜色 98
9-1-4?askcolor( )方法 99
9-1-5?容器的应用 100
9-2 Spinbox控件 101
9-2-1?Spinbox控件基本概念 101
9-2-2?get( )方法的应用 103
9-2-3?以序列存储 Spinbox 的数值
数据 103
9-2-4?非数值数据 104
第10章?Message与Messagebox
10-1 Message 106
10-1-1 Message的基本概念 106
10-1-2 使用字符串变量处理
参数text 107
10-2 Messagebox 107
第11章?事件Events和绑定Bindings
11-1 Widget的command参数 112
11-2 事件绑定 113
11-2-1 鼠标绑定基本应用 115
11-2-2 键盘绑定基本应用 117
11-2-3 键盘与鼠标事件绑定的陷阱 118
11-3 取消绑定 118
11-4 一个事件绑定多个事件处理
程序 119
11-5 Protocols 120
第12章?列表框Listbox与滚动条Scrollbar
12-1 创建列表框 122
12-2 创建列表框项目insert( ) 123
12-3 Listbox的基本操作 126
12-3-1 列出列表框的选项
数量size( ) 126
12-3-2 选择特定索引项
selection_set( ) 126
12-3-3 删除特定索引项delete( ) 127
12-3-4 传回指定的索引项get( ) 128
12-3-5 传回所选择项目的索引
curselection( ) 129
12-3-6 检查指定索引项是否被选择
selection_includes( ) 130
12-4 Listbox与事件绑定 131
12-4-1 虚拟绑定应用于单一选择 131
12-4-2 虚拟绑定应用在多重选择 132
12-5 活用加入和删除项目 133
12-6 Listbox项目的排序 134
12-7 拖曳 Listbox 中的项目 135
12-8 滚动条的设计 137
第13章?下拉式列表OptionMenu与组合框Combobox
13-1 下拉式列表OptionMenu 140
13-1-1 创建基本的OptionMenu 140
13-1-2 使用元组创建列表项目 140
13-1-3 创建默认选项set( ) 141
13-1-4 获得选项内容get( ) 141
13-2 组合框Combobox 142
13-2-1 创建Combobox 142
13-2-2 设置默认选项current( ) 143
13-2-3 获得目前选项get( ) 144
13-2-4 绑定Combobox 144
第14章?容器PanedWindow和Notebook
14-1 PanedWindow 147
14-1-1 PanedWindow基本概念 147
14-1-2 插入子控件add( ) 147
14-1-3 创建LabelFrame当作子对象 148
14-1-4 tkinter.ttk模块的weight
参数 148
14-1-5 在PanedWindow内插入不同
控件 150
14-2 Notebook 151
14-2-1 Notebook基本概念 151
14-2-2 绑定选项卡与子控件内容 152
第15章?进度条Progressbar
15-1 Progressbar的基本应用 155
15-2 Progressbar动画设计 156
15-3 Progressbar的方法start( )、
step( )、stop( ) 157
15-4 indeterminate模式 158
第16章?菜单Menu和工具栏Toolbar
16-1 菜单Menu的基本概念 160
16-2 tearoff参数 162
16-3 菜单列表间加上分隔线 162
16-4 创建多个菜单的应用 163
16-5 Alt快捷键 164
16-6 Ctrl快捷键 165
16-7 创建子菜单 166
16-8 创建弹出式菜单 167
16-9 add_checkbutton( ) 168
16-10 创建工具栏Toolbar 169
第17章?文字区域Text
17-1 文字区域Text的基本概念 172
17-2 插入文字insert( ) 173
17-3 Text加上滚动条Scrollbar
设计 174
17-4 字形 177
17-4-1 family 177
17-4-2 weight 178
17-4-3 size 179
17-5 选择文字 180
17-6 认识Text的索引 181
17-7 创建书签 183
17-8 标签 184
17-9 Cut、Copy和Paste功能 186
17-10 复原与重复 189
17-11 查找文字 190
17-12 拼写检查 191
17-13 存储Text控件内容 193
17-14 新建文档 196
17-15 打开文档 197
17-16 默认含滚动条的 ScrolledText
控件 198
17-17 插入图像 199
第18章 ?Treeview
18-1 Treeview的基本概念 201
18-2 格式化Treeview栏位内容 204
18-3 创建不同颜色的行内容 205
18-4 创建层级式的 Treeview 207
18-5 插入图像 208
18-6 Selection 选项发生与事件
触发 209
18-7 删除项目 210
18-8 插入项目 211
18-9 双击某个项目 213
18-10 Treeview绑定滚动条 215
18-11 排序 216
第19章?Canvas
19-1 绘图功能 219
19-1-1 创建画布 219
19-1-2 绘制线条create_line( ) 219
19-1-3 绘制矩形create_rectangle( ) 222
19-1-4 绘制圆弧create_arc( ) 224
19-1-5 绘制圆或椭圆create_oval( ) 226
19-1-6 绘制多边形create_polygon( ) 226
19-1-7 输出文字create_text( ) 227
19-1-8 更改画布背景颜色 228
19-1-9 插入图像create_image( ) 228
19-2 鼠标拖曳绘制线条 229
19-3 动画设计 229
19-3-1 基本动画 229
19-3-2 多个球移动的设计 230
19-3-3 将随机数应用于多个球体的
移动 231
19-3-4 消息绑定 232
19-3-5 再谈动画设计 233
19-3-6 有趣的动画实例 235
19-4 反弹球游戏设计 241
19-4-1 设计球往下移动 241
19-4-2 设计让球上下反弹 243
19-4-3 设计让球在画布四面
反弹 244
19-4-4 创建球拍 244
19-4-5 设计球拍移动 245
19-4-6 球拍与球碰撞的处理 246
19-4-7 完整的游戏 247
19-5 多个反弹球的设计 249
19-6 创建直方图和执行排序 250
19-7 递归概念与分形 252
19-7-1 使用tkinter处理谢尔宾斯基
三角形 252
19-7-2 设计递归树 254
19-7-3 科赫雪花分形 255
第20章?GUI专题实践
20-1 MP3音乐播放器 260
20-2 专题:使用图形接口处理
YouTube影音文件下载 261
附录A?RGB色彩表 263
附录B?函数或方法索引表 269
2019年8月笔者出版了《Python GUI设计tkinter菜鸟编程》,这是市面上首本讲解GUI设计的图书,很快就销售了5000多册。本书是该书的增强版,除修订了一些语句外,还增加了GUI专题实践,让整个GUI的设计实例更加完善,让读者获得更好的参考价值。
Python应用程序内附tkinter模块。该模块主要用于设计图形用户接口(Graphical User Interface,GUI),也可用于设计跨平台的窗口应用程序,而且该模块中的控件(Widget)也可用于设计图形接口让用户和计算机沟通。tkinter模块简单好用,但是目前却少有书籍对这个模块做过完整的功能介绍,这也是笔者决定撰写本书的动力。
本书基本上不对Python语法进行介绍,所以读者需要有一定的Python知识才适合阅读本书,如果没有Python基础,建议先阅读讲解Python基础知识的图书,创建起完整的Python知识体系。
本书将通过约312个程序实例讲解下列知识。
(1) Python tkinter Widget;
(2) Python tkinter.ttk Widget;
(3) Widget常用属性;
(4) Widget常用方法;
(5)变量类别;
(6)事件与绑定;
(7)计算器设计;
(8)文本编辑程序设计;
(9)动画游戏设计;
(10)谢尔宾斯基三角形、递归树、科赫雪花等分形设计;
(11)走马灯设计;
(12)模拟海龟绘图;
(13)球类竞赛;
(14)风扇设计;
(15)单个或多个反弹球设计;
(16)钟摆与旋转钟摆设计;
(17)创建直方图与动态排序;
(18) MP3音乐播放器;
(19)窗口接口的YouTube影音文件下载。
笔者曾写过许多计算机书籍,本书沿袭笔者以往著作的特色,程序实例丰富,相信读者只要遵循本书的学习路线,必定可以在最短时间精通图形用户接口程序设计。本书内容力求完美,但是书中疏漏与不足之处在所难免,希望读者不吝指正。
洪锦魁
2024年1月
图书资源说明
本书中的所有程序实例通过扫描书后的二维码获取。
评论
还没有评论。