新書推薦:
《
反操纵心理学:夺回人生主导权 拒绝被操纵
》
售價:HK$
54.8
《
同工异曲:跨文化阅读的启示(修订版)
》
售價:HK$
43.8
《
牛津立法研究手册
》
售價:HK$
358.6
《
制度为什么重要:政治科学中的新制度主义(人文社科悦读坊)
》
售價:HK$
63.8
《
梦醒子:一位华北乡居者的人生(1857—1942))(第2版)
》
售價:HK$
74.8
《
啊哈!原来如此(中译本修订版)
》
售價:HK$
63.8
《
部分识别入门——计量经济学的创新性方法
》
售價:HK$
75.9
《
东野圭吾:变身(来一场真正的烧脑 如果移植了别人的脑子,那是否还是我自己)
》
售價:HK$
64.9
|
編輯推薦: |
《Python GUI设计tkinter菜鸟编程》是国内首先使用tkinter设计GUI的中文Python书籍之一;为了详细讲解GUI设计,本书共使用了270个程序实例,详细讲解各种Widget的用法。
|
內容簡介: |
这是国内首先使用tkinter设计GUI的中文Python书籍之一。 本书主要讲解如何在窗口内使用Python的内部模块tkinter设计图形用户接口GUI程序,使 用户可以利用图形接口与计算机沟通。tkinter模块是一个跨平台的窗口应用程序,使用它设计的 程序未来可以在Windows、Mac、Linux系统上执行。 Python的tkinter模块内部有许多Widget可以翻译为控件或组件或部件,有了这些Widget 就可以设计出所有与图形接口相关的程序应用。本书介绍的tkinter模块Widget包括Button按 钮、Canvas画布、Checkbutton选项钮、Entry文本框、Frame框架、Label卷标、 LabelFrame卷标框架、Listbox窗体、Menu菜单、MenuButton单选按钮、Message信息、 OptionMenu下拉式窗体、PanedWindow面板、RadioButton选项钮、Scale滚动条值控制、 Scrollbar滚动条、Spinbox可微调输入控件、Text文字区域、TopLevel上层窗口。 此外,本书还介绍了与tkinter模块设计应用有关的变量类别Variable Classes与事件绑定 Events and Binds概念。 为了详细讲解GUI设计,本书共使用了约270个程序实例,详细解析各种Widget的用法, 同时也将应用扩充到设计文字编辑程序、计算器、动画与相关的游戏设计中。相信读者学完本书 可以轻松将GUI知识应用到未来职场,成为一位称职的软件工程师,并成为Python领域的高手。
|
目錄:
|
目 录
第 1章 基本概念
1-1 认识GUI和tkinter .................... 2
1-2 建立窗口 ................................... 3
1-3 窗口属性的设置 ......................... 3
1-4 窗口位置的设置 .......................... 5
1-5 认识tkinter的Widget ................ 7
1-5-1 tkinter 的 Widget ............................. 7
1-5-2 加强版的 tkinter 模块 ..................... 8
1-6 Widget的共同属性..................... 9
1-7 Widget的共同方法 ..................... 9
第 2章 标签Label
2-1 标签Label的基本应用 .............. 12
2-2 Widget共同属性Color ............. 14
2-3 Widget的共同属性Dimensions .... 15
2-4 Widget的共同属性Anchor ....... 15
2-5 Label文字输出换行位置
wraplength ............................. 17
2-6 Widget的共同属性Font ........... 17
2-7 Label的justify参数 ................. 18
2-8 Widget的共同属性
Bitmaps ................................. 20
2-9 compound参数 ....................... 20
2-10 Widget的共同属性relief ........ 22
2-11 标签文字与标签区间的间距
padxpady ............................ 22
2-12 图像PhotoImage .................. 23
2-13 Widget的共同方法
config ............................... 27
2-14 Widget的共同属性
Cursors ............................... 28
2-15 Widget的共同方法keys ...... 29
2-16 分隔线Separator .................. 30
第 3章 窗口控件配置管理员
3-1 Widget Layout Manager ......... 33
3-2 pack方法 ............................... 33
3-2-1 side 参数 ....................................... 33
3-2-2 padxpady 参数 ............................. 37
3-2-3 ipadxipady 参数 ........................... 40
3-2-4 anchor 参数 ................................... 41
3-2-5 fi ll 参数 ......................................... 42
3-2-6 expand 参数 .................................. 45
3-2-7 pack 的方法 .................................. 47
3-3 grid方法 ................................. 48
3-3-1 row 和 column ............................... 48
3-3-2 columnspan 参数 ........................... 50
3-3-3 rowspan 参数 ................................ 51
3-3-4 padx 和 pady 参数......................... 52
3-3-5 sticky 参数 .................................... 53
3-3-6 grid 方法的应用 ............................ 55
3-3-7 rowconfi gure 和
columnconfi gure ......................... 56
3-4 place方法 .............................. 58
3-4-1 xy 参数 ......................................... 58
3-4-2 widthheight 参数 .......................... 59
3-4-3 relxrely 参数与 relwidthrelheight
参数 .............................................. 60
3-5 Widget控件位置总结 ............... 62
第 4章 功能按钮Button
4-1 功能按钮基本概念 ..................... 64
4-2 使用Lambda表达式 ................ 68
4-3 建立含图像的功能按钮 .............. 69
4-4 简易计算器按钮布局的应用 ........ 70
4-5 设计鼠标光标在功能
按钮上的形状 .......................... 72
Python GUI 设计tkinter菜鸟编程
IV
第 5章 文本框Entry
5-1 文本框Entry的基本概念 ........... 74
5-2 使用show参数隐藏输入的字符 ... 75
5-3 Entry的get 方法 .................. 77
5-4 Entry的insert 方法 .............. 79
5-5 Entry的delete 方法 ............. 80
5-6 计算数学表达式使用eval ....... 81
第 6章 变量类别
6-1 变量类别的基本概念 ................. 84
6-2 get 与set ......................... 84
6-3 追踪trace 使用模式w ........... 86
6-4 追踪trace 使用模式r ............ 88
6-5 trace 方法调用的
callback方法参数 .................... 89
6-6 计算器的设计 ........................... 90
第 7章 选项按钮与复选框
7-1 Radiobutton选项按钮 .............. 94
7-1-1 选项按钮的基本概念 ................... 94
7-1-2 将字典应用在选项按钮上 ............ 97
7-1-3 盒子选项按钮 ............................... 98
7-1-4 建立含图像的选项按钮 ............... 99
7-2 Checkbutton复选框 .............. 101
7-2-1 复选框的基本概念 ..................... 101
7-3 简单编辑程序的应用 ............... 105
第 8章 容器控件
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-1 Toplevel 窗口的基本概念........... 116
8-3-2 使用 Toplevel 窗口仿真对话框 .... 117
第 9章 与数字有关的Widget
9-1 Scale的数值输入控制 ............ 120
9-1-1 Scale 的基本概念 ....................... 120
9-1-2 取得与设置 Scale 的尺度值 ....... 122
9-1-3 使用 Scale 设置窗口背景颜色 .....123
9-1-4 askcolor 方法 ........................... 125
9-1-5 容器的应用 ................................. 126
9-2 Spinbox控件 ........................ 127
9-2-1 Spinbox 控件基本概念 ............... 127
9-2-2 get 方法的应用 ....................... 129
9-2-3 以序列存储 Spinbox 的数值
数据 ............................................ 130
9-2-4 非数值数据 ................................. 131
第 10章 Message与Messagebox
10-1 Message ............................ 133
10-1-1 Message 的基本概念 ................ 133
10-1-2 使用字符串变量处理 text
参数 .......................................... 134
10-2 Messagebox ...................... 135
第 11章 事件和绑定
11-1 Widget的command
参数 ................................... 141
11-2 事件绑定 ............................. 142
11-2-1 鼠标绑定的基本应用................ 145
11-2-2 键盘绑定的基本应用................ 147
11-2-3 键盘与鼠标事件绑定的陷阱 ...... 148
11-3 取消绑定 ............................. 149
11-4 一个事件绑定多个事件处理
程序 ................................... 151
11-5 Protocols ........................... 152
第 12章 列表框Listbox与滚动条
Scrollbar
12-1 建立列表框 .......................... 154
12-2 建立列表框项目insert ....... 155
12-3 Listbox的基本操作 .............. 159
12-3-1 列出列表框的选项数量
size ........................................ 159
目录
V
12-3-2 选取特定索引项 selection_
set .......................................... 160
12-3-3 删除特定索引项 delete ......... 161
12-3-4 传回指定的索引项 get .......... 163
12-3-5 传回所选取项目的索引
curselection ........................... 164
12-3-6 检查指定索引项是否被选取
selection_includes ................. 165
12-4 Listbox与事件绑定 .............. 165
12-4-1 虚拟绑定应用于单选 ............... 165
12-4-2 虚拟绑定应用于多选 ............... 167
12-5 活用加入和删除项目 .............. 168
12-6 Listbox项目的排序 .............. 170
12-7 拖曳Listbox中的项目........... 171
12-8 滚动条的设计 ....................... 173
第 13章 OptionMenu与Combobox
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
14-1 PanedWindow .................... 186
14-1-1 PanedWindow 基本概念 ........... 186
14-1-2 插入子控件 add ..................... 186
14-1-3 建立 LabelFrame 当作子对象 .. 187
14-1-4 tkinter.ttk 模块的 weight
参数 .......................................... 188
14-1-5 在 PanedWindow 内插入不同
控件 .......................................... 190
14-2 Notebook ........................... 191
14-2-1 Notebook 基本概念 .................. 191
14-2-2 绑定选项卡与子控件内容 ........ 192
第 15章 进度条Progressbar
15-1 Progressbar的基本应用 ...... 195
15-2 Progressbar动画设计 ......... 196
15-3 Progressbar的方法start
step stop ..................... 198
15-4 indeterminate模式 .............. 200
第 16章 菜单Menu和工具栏
Toolbars
16-1 菜单Menu设计的基本概念 ..... 202
16-2 tearoff参数 ......................... 204
16-3 菜单列表间加上分隔线 .......... 205
16-4 建立多个菜单的应用.............. 206
16-5 Alt快捷键 ............................ 208
16-6 Ctrl 快捷键 ........................ 210
16-7 创建子菜单 .......................... 211
16-8 建立弹出式菜单 .................... 212
16-9 add_checkbutton ............ 213
16-10 创建工具栏Toolbar ............ 215
第 17章 文字区域Text
17-1 文字区域Text的基本概念 ..... 218
17-2 插入文字insert ................. 220
17-3 Text加上滚动条Scrollbar
设计 ................................... 221
17-4 字形 ................................... 224
17-4-1 family ........................................ 224
17-4-2 weight ........................................ 225
17-4-3 size ............................................ 227
17-5 选取文字 ............................. 228
17-6 认识Text的索引 .................. 229
17-7 建立书签 ............................. 232
17-8 标签 ................................... 233
17-9 CutCopyPaste功能 ........... 236
17-10 复原与重复 ........................ 239
17-11 查找文字 ........................... 241
17-12 拼写检查 ........................... 243
Python GUI 设计tkinter菜鸟编程
VI
17-13 存储Text控件内容 ............. 244
17-14 新建文档 ........................... 248
17-15 打开文档 ........................... 249
17-16 默认含滚动条的ScrolledText
控 件 .................................. 251
17-17 插入图像 ........................... 252
第 18章 Treeview
18-1 Treeview的基本概念 ........... 254
18-2 格式化Treeview栏位内容 .... 258
18-3 建立不同颜色的行内容 .......... 260
18-4 建立层级式的Treeview ........ 262
18-5 插入图像 ............................. 263
18-6 Selection选项发生与事件
触发 ................................... 264
18-7 删除项目 ............................. 266
18-8 插入项目 ............................. 267
18-9 双击某个项目 ....................... 270
18-10 Treeview绑定滚动条 ......... 271
18-11 排序.................................. 272
第 19章 Canvas
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
|
內容試閱:
|
序
本书是一本使用 tkinter 进行 Python GUI 设计的中文图书。
作者在 2017 年 12 月出版了《Python 入门迈向高手之路王者归来》。该书从上市到
现在,连续几个月皆是台湾地区 Python 领域最畅销的书籍。该书约 820 页,虽然是目前
Python 图书讲解内容较丰富、应用较广泛的图书,但受限于篇幅,作者深知该书仍无法
涵盖所有 Python 的应用,特别是在 GUI 设计部分只是粗浅讲解。
在 Python 应用程序内附有 tkinter 模块。这个模块主要用于设计用户图形接口
Graphical User Interface,GUI,也可以用于设计跨平台的窗口应用程序。程序设计人
员可以使用此模块的控件 Widget 设计图形接口让用户与计算机沟通。tkinter 模块简单
好用,但是目前却少有书籍对这个模块做过完整的功能介绍,这也是作者决定撰写本书
的动力。
本书基本上不对 Python 语法进行介绍,所以读者需要有一定的 Python 知识基础才
适合阅读本书,如果没有 Python 基础,建议先阅读作者所著下列两本书之一,建立起完
整的 Python 知识框架。
《Python 零基础最强入门之路王者归来 》
《Python 入门迈向高手之路王者归来 》
本书将通过约 270 个程序实例讲解下列知识。
1 Python tkinter Widget ;
2 Python tkinter.ttk Widget ;
3 Widget 常用属性 ;
4 Widget 常用方法 ;
5 变量类别 ;
6 事件与绑定 ;
7 计算器设计 ;
Python GUI 设计tkinter菜鸟编程
II
8 文本编辑程序设计 ;
9 动画游戏设计。
作者曾编写过许多计算机书籍。本书沿袭作者以往著作的特色,程序实例丰富,相
信读者只要遵循本书的学习路线,必定可以在最短时间内精通窗口程序设计。本书内容
虽力求完美,但是书中疏漏与不足之处在所难免,希望读者不吝指正。
|
|