您现在的位置是:论文诗词网 > 成语词典 > 图书库 >

Tcl/Tk入门经典

2021-08-15 13:46图书库 人已围观



Tcl/Tk入门经典

基本介绍


作者: John K. Ousterhout / Ken Jones
出版社: 清华大学出版社
原作名: Tcl and the Tk Toolkit (2nd Edition)
译者: 张元章
出版年: 2010-10
页数: 540
定价: 69.00元
装帧: 平装
ISBN: 9787302235170

书本简介


《Tcl/Tk入门经典(第2版)》介绍了Tcl语言、Tk工具集以及Tcl和C语言结合编程。《Tcl/Tk入门经典(第2版)》第I部分首先介绍了Tcl语言的基本概念和基础知识。第II部分集中介绍如何使用Tk工具集开发图形用户界面。第Ⅲ部分讲解了如何结合Tcl和C语言进行程序开发。《Tcl/Tk入门经典(第2版)》原第一作者是Tcl的创造者,所以《Tcl/Tk入门经典(第2版)》内容覆盖了Tcl语言的主要方面,且示例程序丰富,大部分示例代码可在Tcl安装目录的demos目录中找到。

《Tcl/Tk入门经典(第2版)》适用于Tcl语言的初学者,也适用于希望了解Tcl 8.5版和Tk 8.5版新特性的读者。

作者简介


目录


第Ⅰ部分 Tcl语言
第1章 Tcl和Tk概览3
1.1 从这里起步3
1.2 用Tk编写"Hello, world!"程序5
1.3 脚本文件7
1.3.1 在Unix和Mac OS X中
运行脚本7
1.3.2 在Windows中执行脚本8
1.3.3 在交互式解释器中运行脚本8
1.4 变量与替换8
1.5 控制结构9
1.6 关于Tcl语言11
1.7 事件绑定12
1.8 Tcl和Tk的更多功能14
第2章 Tcl语言的语法16
2.1 脚本、命令和单词16
2.2 处理命令16
2.3 变量替换18
2.4 命令替换19
2.5 反斜线替换20
2.6 双引号引用21
2.7 大括号引用22
2.8 参数展开24
2.9 注释25
2.10 正常返回和异常返回26
2.11 有关替换的更多信息27
第3章 变量29
3.1 本章出现的命令29
3.2 简单变量和set命令30
3.3 Tcl的内部数据存储30
3.4 数组31
3.5 变量替换32
3.6 多维数组33
3.7 查询数组的元素34
3.8 incr命令和append命令35
3.9 移除变量:unset和array unset36
3.10 预定义变量36
3.11 其他变量功能预览37
第4章 表达式38
4.1 本章出现的命令38
4.2 数值操作数38
4.3 操作符及其优先级39
4.3.1 算术操作符40
4.3.2 关系操作符40
4.3.3 逻辑操作符41
4.3.4 按位操作符41
4.3.5 选择操作符41
4.4 数学函数42
4.5 替换43
4.6 字符串操作44
4.7 列表操作45
4.8 类型与转换46
4.9 精度46
第5章 字符串操作47
5.1 本章出现的命令47
5.2 取得字符:string index
和string range50
5.3 长度、大小写转换、裁剪以及重复50
5.4 简单搜索51
5.5 字符串比较51
5.6 字符串置换52
5.7 确定字符串类型53
5.8 用format创建字符串54
5.9 用scan解析字符串56
5.10 通配符样式的模式匹配57
5.11 使用正则表达式进行模式匹配58
5.11.1 正则表达式的原子58
5.11.2 正则表达式的分支和量词61
5.11.3 逆向引用62
5.11.4 非捕获子表达式62
5.11.5 regexp命令62
5.12 使用正则表达式进行替换63
5.13 字符集专题64
5.13.1 字符编码和操作系统65
5.13.2 编码和通道输入/输出65
5.13.3 转化字符串的编码格式66
5.14 消息目录66
5.14.1 使用消息目录66
5.14.2 创建本地消息文件67
5.14.3 在源字符串和翻译字符串中
使用转换符68
5.14.4 在命名空间中使用
消息目录69
5.15 二进制字符串69
第6章 列表73
6.1 本章出现的命令73
6.2 基本列表结构与lindex
和llength命令74
6.3 创建列表:list、concat和lrepeat76
6.4 修改列表:lrange、linsert、lreplace、
lset和lappend77
6.5 从列表中取得元素:lassign79
6.6 搜索列表:lsearch79
6.7 排序列表:lsort80
6.8 在字符串和列表之间转化:split
与join81
6.9 用列表创建命令82
第7章 字典84
7.1 本章出现的命令84
7.2 基本字典结构与 dict get命令86
7.3 创建和更新字典88
7.4 检测字典:子命令size、exists、
keys和for89
7.5 更新字典中的值90
7.6 使用嵌套字典92
第8章 流程控制96
8.1 本章出现的命令96
8.2 if命令97
8.3 switch命令98
8.4 循环命令:while、for和foreach100
8.5 循环控制:break与continue101
8.6 eval命令102
8.7 从文件运行:source103
第9章 过程104
9.1 本章出现的命令104
9.2 过程基础:proc与return105
9.3 局部和全局变量106
9.4 参数变量的数目和默认设置106
9.5 传引用调用:upvar107
9.6 创建新的控制结构:uplevel109
9.7 应用匿名过程110
第10章 命名空间112
10.1 本章出现的命令112
10.2 在命名空间中处理Tcl脚本114
10.3 操作限定名称116
10.4 在命名空间中导出和导入命令117
10.5 检查命名空间118
10.6 有关集合命令119
10.6.1 基本的集合命令119
10.6.2 在集合命令中设置
集合命令120
10.6.3 控制集合命令的设置121
10.6.4 管理集合unknown
子命令121
10.7 访问其他命名空间的变量123
10.8 名称解析路径的控制124
第11章 访问文件126
11.1 本章出现的命令126
11.2 操纵文件和目录名128
11.3 当前工作目录130
11.4 列出目录的内容130
11.5 处理磁盘上的文件132
11.5.1 创建目录132
11.5.2 删除文件132
11.5.3 复制文件133
11.5.4 重命名和移动文件133
11.5.5 文件信息命令134
11.5.6 处理名称怪异的文件135
11.6 读写文件135
11.6.1 基本文件I/O135
11.6.2 输出缓冲区137
11.6.3 处理各平台的行
结束约定137
11.6.4 管理字符编码集139
11.6.5 处理二进制文件139
11.6.6 随机访问文件139
11.6.7 复制文件内容140
11.7 虚拟文件系统142
11.8 系统调用中的错误143
第12章 进程间通信144
12.1 本章出现的命令144
12.2 用exit终止Tcl进程145
12.3 用exec调用子进程146
12.4 命令管线的输入输出148
12.5 配置通道选项149
12.5.1 通道阻塞模式149
12.5.2 通道的缓冲模式150
12.6 事件驱动的通道交互150
12.6.1 用vwait进入Tcl
事件循环151
12.6.2 注册文件事件处理器151
12.7 进程ID153
12.8 环境变量153
12.9 TCP/IP套接字通信153
12.9.1 创建客户通信套接字154
12.9.2 创建服务器套接字155
12.10 向Tcl程序发送命令157
12.10.1 send基础157
12.10.2 应用程序名称157
12.10.3 有关send的安全问题158
第13章 错误与异常159
13.1 本章出现的命令159
13.2 在出现错误后会发生什么160
13.3 由Tcl脚本生成错误161
13.4 用catch捕获错误161
13.5 异常概述162
13.6 后台错误与bgerror164
第14章 创建与使用Tcl脚本库166
14.1 本章出现的命令166
14.2 load命令168
14.3 库的使用168
14.4 自动加载168
14.5 包170
14.5.1 包的使用170
14.5.2 包的创建170
14.5.3 使用::pkg::create172
14.5.4 包的安装172
14.5.5 包的实用命令172
14.6 Tcl模块173
14.6.1 使用Tcl模块173
14.6.2 安装Tcl模块174
14.7 把脚本打包为Starkit175
14.7.1 安装Tclkit176
14.7.2 创建Starkit176
14.7.3 创建平台相关的可执行
文件178
第15章 Tcl内部管理179
15.1 本章出现的命令179
15.2 时间延迟183
15.3 时间和日期操作184
15.3.1 产生可读的时间
和日期字符串184
15.3.2 扫描可读的时间
和日期字符串186
15.3.3 进行时间计算187
15.4 运行计时命令188
15.5 info命令188
15.5.1 有关变量的信息188
15.5.2 有关过程的信息189
15.5.3 有关命令的信息190
15.5.4 Tcl解释器版本及其
他运行环境信息191
15.6 对简单变量的跟踪操作191
15.7 跟踪数组变量194
15.8 重命名和删除命令194
15.9 跟踪命令195
15.10 未知命令197
15.11 从解释器198
15.11.1 命令别名200
15.11.2 安全从解释器
和隐藏命令201
15.11.3 解释器之间的传输通道202
15.11.4 为解释器设定限制203
第16章 历史205
16.1 本章出现的命令205
16.2 历史列表206
16.3 描述事件206
16.4 从历史列表中再次执行命令207
16.5 利用unknown实现的快捷方式207
16.6 当前事件号:history nextid208
第Ⅱ部分 编写Tk脚本
第17章 Tk入门211
17.1 窗口系统简介211
17.2 组件213
17.3 应用、顶层组件和屏幕214
17.4 脚本和事件215
17.5 创建和删除组件216
17.6 几何管理器216
17.7 组件命令217
17.8 互连命令218
第18章 Tk组件概览219
18.1 组件基础219
18.2 框架221
18.2.1 浮雕选项221
18.2.2 屏幕距离选项221
18.3 颜色选项222
18.4 顶层223
18.5 标签223
18.5.1 文本选项223
18.5.2 字体选项224
18.5.3 图像选项224
18.5.4 复合选项225
18.6 标签框架225
18.7 按钮226
18.7.1 复选按钮226
18.7.2 单选按钮227
18.7.3 菜单按钮228
18.8 列表框229
18.9 滚动条229
18.9.1 移动单个的组件230
18.9.2 多个组件的同步滚动231
18.10 标尺232
18.11 输入框233
18.11.1 输入框组件233
18.11.2 调节框234
18.11.3 show选项234
18.11.4 验证235
18.12 菜单236
18.12.1 下拉菜单237
18.12.2 级联菜单238
18.12.3 键盘遍历和快捷键239
18.12.4 针对平台的菜单240
18.12.5 弹出式菜单240
18.13 分栏窗口241
18.14 标准对话框243
18.15 其他的常见选项244
18.15.1 组件状态244
18.15.2 组件尺寸选项244
18.15.3 锚定选项245
18.15.4 内部补白245
18.15.5 光标选项246
第19章 主题组件247
19.1 比较经典组件和主题组件247
19.2 组合框249
19.3 记事本249
19.4 进度条251
19.5 分隔符252
19.6 尺寸控制柄252
19.7 目录树252
19.7.1 管理目录树条目252
19.7.2 控制目录树的列和标题255
19.7.3 目录树条目选择管理256
19.7.4 目录树条目标记257
19.8 主题组件状态258
19.9 主题组件样式259
19.9.1 使用主题260
19.9.2 样式的元素260
19.9.3 创建和配置样式261
19.10 其他标准主题组件选项263
第20章 字体、位图和图像264
20.1 本章出现的命令264
20.2 font命令265
20.2.1 控制和使用命名字体266
20.2.2 其他的字体应用269
20.2.3 字体描述269
20.3 image命令270
20.3.1 位图图像271
20.3.2 相片图像271
20.3.3 图像和命名空间275
第21章 几何管理器277
21.1 本章出现的命令277
21.2 几何管理器概览278
21.3 网格管理器279
21.3.1 grid命令和-sticky选项282
21.3.2 跨行和跨列283
21.3.3 拉伸行为与-weight
和-uniform选项283
21.3.4 相对位置字符284
21.4 打包器285
21.4.1 pack命令和-side选项287
21.4.2 充满288
21.4.3 扩充288
21.4.4 锚定290
21.4.5 打包顺序290
21.5 补白291
21.6 定位器291
21.7 层级结构几何管理292
21.8 组件堆栈顺序293
21.9 其他几何管理器选项294
21.10 Tk里的其他几何管理器295
第22章 事件和绑定297
22.1 本章出现的命令297
22.2 事件298
22.3 bind命令概览299
22.4 事件模式300
22.5 事件序列301
22.6 脚本中的置换301
22.7 解决冲突302
22.8 事件绑定层级结构303
22.9 事件何时被处理304
22.10 命名虚拟事件305
22.11 生成事件307
22.12 逻辑动作308
22.13 绑定的其他用途310
第23章 画布组件311
23.1 画布基础:条目和类型311
23.2 控制带标识符和标记的条目313
23.3 绑定315
23.4 画布滚动318
23.5 生成Postscript319
第24章 文本组件321
24.1 文本组件的基本原理321
24.2 文本索引与记号323
24.3 搜索与替换324
24.4 文本标记325
24.4.1 标记选项326
24.4.2 标记优先级328
24.4.3 标记绑定328
24.5 虚拟事件329
24.6 嵌入式窗口329
24.7 嵌入图像330
24.8 撤销331
24.9 同级文本组件334
第25章 选择与剪贴板336
25.1 本章出现的命令336
25.2 选择、检索和类型337
25.3 定位和清除选择338
25.4 用Tcl 脚本提供选择339
25.5 clipboard命令340
25.6 拖曳和释放341
第26章 窗口管理器342
26.1 本章出现的命令342
26.2 窗口尺寸344
26.3 窗口位置346
26.4 网格化窗口346
26.5 窗口状态347
26.6 装饰348
26.7 特殊处理:瞬态、组
和覆盖-重定向349
26.8 针对系统的窗口属性349
26.9 可停靠的窗口350
26.10 关闭窗口351
26.11 会话管理352
第27章 焦点、模态交互
与自定义对话框353
27.1 本章出现的命令353
27.2 输入焦点354
27.2.1 焦点模式:显式与隐式354
27.2.2 设置输入焦点355
27.2.3 查询输入焦点355
27.3 模态交互356
27.3.1 攫取356
27.3.2 局部和全局攫取357
27.3.3 攫取中的键盘处理357
27.3.4 等待:tkwait命令358
27.4 自定义对话框359
第28章 更多配置选项363
28.1 本章出现的命令363
28.2 选项数据库364
28.3 选项数据库条目364
28.4 RESOURCE_MANAGER
属性和.Xdefaults文件365
28.5 选项数据库的优先级366
28.6 option命令367
28.7 configure组件命令367
28.8 cget组件命令368
第29章 关于Tk的其他内容369
29.1 本章出现的命令369
29.2 删除组件370
29.3 update命令370
29.4 关于组件的信息371
29.5 tk命令371
29.6 Tk控制的变量372
29.7 响铃373
第Ⅲ部分 C语言中Tcl应用程序的编写
第30章 Tcl与C语言的集成原理377
30.1 Tcl与C:如何选用378
30.2 资源名称--把C结构
连接到Tcl379
30.3 "面向动作"与"面向对象"380
30.4 描述性信息381
第31章 解释器382
31.1 本章出现的函数382
31.2 解释器概述383
31.3 简单的Tcl 应用程序384
31.4 删除解释器385
31.5 多重解释器385
第32章 Tcl对象387
32.1 本章出现的函数387
32.2 字符串对象390
32.3 数值对象390
32.4 从对象中获取C语言数据391
32.5 Tcl对象的动态本质391
32.6 字节数组392
32.7 复合对象392
32.8 引用计数393
32.9 共享对象393
32.10 新的对象类型394
32.11 解析字符串395
32.12 内存分配395
第33章 处理Tcl代码397
33.1 本章出现的函数397
33.2 处理Tcl代码398
33.3 动态创建脚本399
33.4 Tcl表达式400
第34章 访问Tcl变量401
34.1 本章出现的函数401
34.2 设置变量值403
34.3 读取变量404
34.4 删除变量405
34.5 链接Tcl和C变量405
34.6 设置与删除变量跟踪407
34.7 跟踪回调407
34.8 全数组跟踪409
34.9 多重跟踪409
34.10 删除回调409
第35章 创建新的Tcl命令411
35.1 本章出现的函数411
35.2 命令函数413
35.3 注册命令414
35.4 结果协议416
35.5 Tcl_AppendResult416
35.6 Tcl_SetResult和interp->result416
35.7 clientData和删除回调418
35.8 删除命令420
35.9 获取与设置命令参数420
35.10 Tcl过程如何工作422
35.11 命令跟踪423
第36章 扩展包424
36.1 本章出现的函数424
36.2 Init函数425
36.3 包425
36.4 命名空间426
36.5 Tcl占位符426
36.6 ifconfig扩展包427
第37章 嵌入Tcl433
37.1 本章出现的函数433
37.2 将Tcl添加到应用程序433
37.3 初始化Tcl434
37.4 创建新的Tcl外壳435
第38章 异常437
38.1 本章出现的函数437
38.2 完成代码438
38.3 设置errorCode440
38.4 管理返回的选项字典441
38.5 在errorInfo中添加堆栈跟踪441
38.6 TcL_Panic444
第39章 字符串工具445
39.1 本章出现的函数445
39.2 动态字符串449
39.3 字符串匹配452
39.4 正则表达式匹配453
39.5 处理字符编码454
39.6 处理Unicode和UTF-8字符串455
39.7 命令完整性457
第40章 哈希表459
40.1 本章出现的函数459
40.2 关键字和值461
40.3 创建和删除哈希表461
40.4 创建条目462
40.5 查找已存在的条目463
40.6 搜索464
40.7 删除条目465
40.8 统计465
第41章 列表和字典对象467
41.1 本章出现的函数467
41.2 列表469
41.3 字典471
第42章 通道475
42.1 本章出现的函数475
42.1.1 基本通道操作475
42.1.2 通道注册函数478
42.1.3 通道属性函数478
42.1.4 通道查询函数479
42.1.5 通道类型定义函数480
42.2 通道操作480
42.3 注册通道482
42.4 标准通道484
42.5 创建新的通道类型484
42.5.1 创建自定义通道实例485
42.5.2 堆叠通道485
42.5.3 ROT13通道486
第43章 事件处理492
43.1 本章出现的函数492
43.2 通道事件493
43.3 时间处理器495
43.4 休眠回调496
43.5 调用事件调度器497
第44章 文件系统的交互500
44.1 Tcl文件系统函数500
44.2 虚拟文件系统502
第45章 操作系统工具503
45.1 本章出现的函数503
45.2 进程504
45.3 收割子进程506
45.4 异步事件507
45.5 信号名称509
45.6 退出与清理509
45.7 其他510
第46章 线程511
46.1 本章出现的函数511
46.2 线程安全512
46.3 构建支持线程的Tcl512
46.4 创建线程512
46.5 终止线程513
46.6 互斥体513
46.7 条件变量514
46.8 其他515
第47章 构建Tcl及其扩展517
47.1 构建Tcl和Tk517
47.1.1 在Unix中构建Tcl
和Tk518
47.1.2 在Mac OS上构建Tcl
和Tk519
47.1.3 在Windows中构建Tcl
和Tk519
47.2 Tcl扩展架构(TEA)520
47.2.1 TEA标准配置选项521
47.2.2 TEA扩展包的目录结构521
47.2.3 定制aclocal.m4文件522
47.2.4 定制configure.in文件522
47.2.5 定制Makefile.in文件525
47.2.6 在Windows中构建
扩展包525
47.3 构建嵌入的Tcl525
第Ⅳ部分 附录
附录A 安装Tcl和Tk529
A.1 版本529
A.2 Tcl发布包529
A.3 ActiveTcl530
A.4 Tclkit530
A.5 用发布的源码编译Tcl/Tk530
附录B 扩展包和应用程序531
B.1 获取和安装扩展包531
B.1.1 手动安装扩展包531
B.1.2 为ActiveState TEApot
档案库安装扩展包531
B.2 TkCon扩展控制台533
B.3 标准Tcl库:Tcllib533
B.4 Img提供的额外的图形格式534
B.5 Snack提供的声音支持534
B.6 面向对象的Tcl534
B.7 多线程Tcl脚本535
B.8 XML编程535
B.9 数据库编程536
B.10 整合Tcl和Java536
B.11 SWIG537
B.12 Expect537
B.13 扩展Tcl538
附录C Tcl资源539
C.1 在线资源539
C.2 书籍540
附录D Tcl源码发布许可541

Tcl/Tk入门经典图书介绍 : 直接购买

站点信息

  • 文章统计111294篇文章