Tcl_Tk组合教程(第二版)——双语教材+多媒体教室

4星(超过85%的资源)
所需积分/C币:36 2013-01-10 22:52:05 15.27MB PDF
50
收藏 收藏
举报

Tcl_Tk组合教程(第二版)——双语教材+多媒体教室
内容简介 书主要介绍7Tr的基本特征和高级编程技术,TkI具包中包含的T具,以及丁1与C语言之间的关 r系:本书是按照一般程员熟悉的方式糖心组织的。它沿着程构的略进行讲解浅显易懂。同时,对 于TkT县包:洋细介绍∫其中的部件及其使用范例,可以卡常方便地查阅和引用、附送的 CD-ROM(多媒 教室包舍书中的所有源代码,以及一个丰富的T/kh相可运行丁各神平台之卜的Ta免费软件 斗书最独特之处是光盘中包括英文原版内容,既订学习时/k,也可练习英语,适合学生和编程人员阅读 Authorized tra nslation Irom the English lan guage edition published by pr rentice- 本书屮文简体版专有翻译出版权由美国 Prentice hal,Inc.授予电子工业出版社。其原攴版权及屮义翻译出 板权受法律保护。未经许可,不得以任何形式或手段复制或抄裘本书内容a Copyright 1998 by Prentice Hal PTR. All rights reserved. No part of this boak may be reproduced or transmitted in any torm or by any means, electronic or mechanical, imcluding photocopying, recording or by any information stor age retrieval syslelml, witfIoil per:ssin Irum Prentice>Halb, lne 图书在版编目(P}数据 /Tl组合教程八美)韦尔特〔Wel,B.E)著;1道义等译 北京:电子工业出版社,201.1 (—双语教材多媒体教室 书名原文; The Complete Tcltk training Course Second Edition k42 IsEN75053-62593 T,T…Ⅱ.①韦…②王…Ⅲ.江程厅语育TCL教材②软件包,TK教材 NY FPI 屮国版本图书馆CP数据核字20)80478号 书名:Td/TIk组合教科〔第二版)——双语教材+乡媒体教室 f A 2: The Complete ToITk Training Course Second Edition 著者:[美] Brent b,Wlh 译者:王道义乔陶鹏等 审校者:乔陶 责忙缩辑:吳源 特约编辑:李银胜 排版制作:电子工业出版计算帆排版室监制 印刷者:北京市天竺额伴印刷厂 出版发行:电子工业出版社URL:hp://wwW.phi,com,c 北京市海漩区万寿路73信箱邮编10036 经销:各地新华书苫 廾本:787×1091/16印张:36字数:918千字 版次:2001年1月第I版2001牛1月第L孜印刷 书号 ISHN750H53}-52593 TP3371 印数:5000册定价:7200元(含光盘2张) 板权贸易合问登记号图字:01-20000253 凡购买电子工业亡版社的图书,如有缺页、倒页、脱页、所附磁盘或光盘有问题者,请向买书店调换 若书店售缺,请与本社发行部联系诩楼。电话68279 译者序 Tl与读者所熟悉的C++和Java言类似,是一种脚本谙言,它区别于这些语言的一个 明显之处在于能够方便地向应用程序中添加其解释器。Tk是Tl的图形用户界面工具包,用 于定义T命令创建和操纵用户界面部件。 本书主要介绍了Tc和Tk编程的相关内容。Tc编程{括T的基本特征和高级编程技 术,Tk部分详细介绍了该工具包包含的工具。此外,本书最后介绍了Tc与C语言之间的关 系 本书是按照一般程序员所熟悉的方式精心组织的。它沿着序构建的思路进行讲解浅 显易。同时,对于Tk工具包,详细介绍了其中的部件及其使用范例,可以非常方便地查阅 和引用。 为方便读者,本书时有学习Tc/Tk语言的全套多媒体教程,其中含有卡富的样例资源和 英文原版内容,具体使用方法参见附录,“"/Tk多媒体教室用户手册” 归于本书涵盖面比较宽,所以面对的读者对象也比较广,对于初学者和专家都同样适用。 虽然本书程序是基于UNIX系统的但不了解 UNIX shell缟稈也不必狙心。本书同样给出了 在 Windows和 Macintosh上的一些相应情况 由于书的篇幅较大,除本书两主要译者外,另外张敏、陈字卢,罗晓宁、李伟、晓洋、李颖 鹏李建朱永亮和杨年峰同志也参加了本书的翻译工作,特此表示感谢 由于时间仓促,水平有限,翻详不当之处敬诮指正。 译者 原书序 Tl是 Tool Command language的编写。Tl实际上包含两个部分;一种御本语言和为之 设计的解释器,该解释器能够很容易地嵌入应用程序中。T及其相关的图形用户界而工具 包,Tk由美国 Californie大学 Berkeley分校的 Jotin Ousterhout教授设计并雕琢雨成。即使含 有商业的,也可以从因特网上找到这些程序包(见后面的介绍)并免费在应用程序中使用。 Tdl解释器已经由LNIX环境移植到DOS、 Windows、OS/2、NT及 Macintosh环境。Tk工具 包也从 X Window系统移植到了 Windows和 Macintosh 笔者第一次听说T是在1988年,当时还是0 osterhout教授在 Berkeley的博士生。我们 设计一个叫作 Sprite的网绪操作系统。当同学们琢磨个新的内核时,John编写了·个新的 编辑器和终端模拟器。他在两个工具中都采用Tc作为命令语言,因此用户可以定义菜单,定 制这些程序。这是X10的日子,他计划基于Tl建立一个XT具包,让多个程序通过利用Tc 命令通信,实现相互协作。就笔者的认识这种工具之间的协作是Td的本质所在。 早期的版本假设应用程序的主体是已编译的代码,只含少量的Tc,用于参数配置和髙级 命令。John的编辑器mx,和终端模拟器Lx,遵循这个模型。如果该模型保持合法,整个应用 程序采用Tl书写就成为可能了。这是因为TTk的外壳wish,提供对其他程序、文件系统 及网络ske的访问,外加创建图形用户界面的能力。无论好坏现在找到含成千上万行T 脚本的应用程序是很普通的。 当笔者发现利用Tl和Tk令人愉快并且多产的时候,经常遇到疑间,因此产生了写本书 的想法。此外,在 Xerox PARC与很多语言利系境方面的专家一起T作,本入被这同时理解 Tc和Tk的强大的一面和脆弱的一面。很多同事当为他们的项目采用Td和Tk时,他们很 快就指出它的瑕疵。作为回应我建立了一整套发据T和Tk的能力,同时避免麻烦的编程 技术。本书作为实指南,目的是帮助读者尽可能多地了解T和Tk,避免一些笔者经历过 的挫折。 为什么选择T 作为一种脚本语言Tcl与其他UNx外壳语言,如 Bourne外壳(sh)C外壳(esh)、Korm 外壳(kh)以及Per相似。外亮程序可以执行其他程序。它们提供足够的可编程能力(变量、 控制流和过程)创建复杂的脚本,组合现有程序成为一个量身定制的新工具。外壳的奇妙之 处在于可以自动完成些常规的杂活。 Tl外亮与其他外壳的明显区别是它能够方便地向应用程序中添加Tl解释器。Td完 成了扩展语言配置和定制应用程序的任务。没有必要为新的应用发明种命令语言或者努 力为用户工具提供某种类型的用户可编程性面只需通过加入一个Td解释器,就可以用套 由脚本组成以最大限庋满足用户需要的基本掘作来构建应用程序。它也允许其他程序对用户 应用程序进行总体掉制这样形成多套相互协作良好的应用程序。 Td的C程序库有清晰的接口,使用简单。程序库运行基本的解释器以及一套接心脚本 命令实现变量流程控制和过程(见1174)。同样有一套访间操作系统服务的命令,以便运 行其他程序访问文件系统以及利用网络 socket:Tk添加了一些创建图形用户界面的命令 Tc/Tk组合教程 Td和Tk提供了一和可以方便跨越UNIX、 Windows和 Macintosh平台的“虚拟机”。 cl虚拟机是可以扩展的,应用程序可以定义新的Tr命令。这些命令与应用程序提供的 C或者C++过程相关联结果就产生一些被分割成一系列编译语言书写的,并输出为Ta]命 令的基本程疗单元。Td脚本用来组合这些单元,形成整个应用程序。脚本层有权使用类似 于外壳的功能如运行其他程序和访问文件系统,以及通过自定义的T命令直接调用应用程 序的已編译部分。此外,在C语言编程的级别上,可以调用Td脚本,设置和查询Tel变量,甚 至跟踪Tl解释器的执行过程。 在区特网上有许多Tc扩展部件可以免费利用。多数扩展部件包抬一个提供一些新功能 的C程序库以及一个针对该程序库的Td接口。范例包括数据库访问、电话控制、MID控制 器访间以及添加Ta命令控制交互式程序的 expect a 最著名的展是'k,它是种针对图形用户界面的工具包。T定义貫命令,创建和操 纵用户界面部件。对于用户界面编程,基于脚本的方法具有三个优点: 因为可以快速转向,开发速度快,不需要等待很长的编译过程。 ●Tc命令提供相对大多数标准C程序库工具包更高级的接口。简单的用户接口只需要 少量的命令进行定义。同时,可以精炼用户接口,以获得每一个细节。快速转向有助 于提炼过程。 用户界面可以明显地从应用程序的其余部分分解并来。开发人员可以首先集中精力 实现程序的核心部分接着毫不费劲地逐步建立用户界而。Tk部件的核心集合常 可以满足所有的用户界面需要。然面,仍然叫以利用C谙言写出自定义的Tk部件 同样在因特网上也有很多免费的Tk部件。 对于扩展语言,还有其他选择,包括 Visual Basic,heme、Elp、Per、 Python以及 Javascript等。在它们之间选择,部分是因为喜好。Tcl具有简单结构,看起来有点像C语言 通过写C语言过程可以很方便地添加新的Td基本单元。此外,Td团体已经贡献了很多可以 随便利用的Td命令。就笔者看来,团体的强大比具体语言细节更为重要 自从本书第一次肝版以来,ava已经在计算机世界产生了爆炸性的效果。Jav是一个伟 大的系统编程语言,从长远看,可以取代C和C++。这对Tl是个好消息,因为它被设计成 胶合”任何系统编程话言书写的构建单元。过去Td与C语一起T作,但是现在已经适应 了与Ja虚拟机一起工作。在任何称呼C或C++”的地方,现在可以称呼“C、C++或Ja 了但细节与Jv有点不同。本书不讨论Te/Java接口,但可以在所附的 CD-ROM中找到 Tcllnterp和 ReApplication的Jaa类。 Javascript是来自于Neap公司的言,为网页交互提供脚本。于 Netscape公司 泛发布, JavaScrip1就很重要了。但是,Td提供一种更通用的脚本解决之道,可以用在大范围 的应用程序之中。 Tc和T版本 Td和Tk不断变革。留心网址htp://www.beedub0m/bok关于最渐T版本的史新 和新闻Tcl和Tk由于历史的原因版本号不同,但成对发布,共同工作。本书的原始版本是 基于Tc74和Tk40的,参照了Tk36的一些特征。第二版已经更新,以反映后来版本添 加的新特征: 原书序 ◆Tcl7.5和Tk4.1在1996年5月有∫最终版本这些发布的特征是将Tk移植到 Windows和 Macintosh环境。引入了Safe7l安全机制支持网络程序( met work applet) 安全执行。同时也有对网络skeL的支持和一个新的输人/输出(L0)子系统用于支 持高性能事件驱动LQ Tel76和Tk42在199%年10月有了最终版本。这些发布包括对sae的提膏和 对Tk41引人的grd几何管理器的改进。跨平台支持包括虚拟事件(例如,<<cwpy >对<< Control-c>>)标准对话框以及更多的文件操作命令。 Tdl7.7和Tk43是内部版本,用来为 Netscape Navigator和 Microsoft internet ex poorer网络浏览器开发T/Tk插件。它们的开发实际上与Te76和Tk4.2是并行 的。插件发布到大范围的平台上,包括 Solaris/PSRC、 Solaris/ INTEL、SmOS, Linux、 Digital UIX IRIx、HPUX、 Windows95、 W indows nt和 Macintosh等。该浏览器 插件支持网Td小应用程序(rc! applet),利用复杂的Safe-Te安全机制保证安全。 ●Tdl8.0以怏速的Tcl编详器为特征,比以前的Td脚本快很多倍。该编译器对Tcl脚 本是透明的,但扩展的书写器需要学习一些CAPI的知识,以发挥它的潜力。 为了与T80匹配,Tk也将新版的版本号改为了8.。Tk80包括一个独立于平台 的新了体机制、本地菜单和菜单条和更多的本地部件,以获得在 Windows和 Macintosh 上更好的木地外观和感觉。在本书写作的同时,Tk的国际化也正在进行,但它可能宜 到Tk8.1才会出现。TTk8.0在199年12月有了它的第一个测试版木。 读者对象 本书既对冒方的初学者,也对rdl行家有用。行家和初学者一样,笔者建议仔细学习 第章,Tl初步。Tdl编程模型简单,但与许多编程语言有所不同。该模型基于字符串替代 为了避免在复杂的憤况下出现麻烦,正确理解它是很重要的。本书的其余部分由一些演示怎 么有效地使用Tl和Tk的范例组成。为方便参考,每一章有一些表格,总结该章介绍的Tel 命令和Tk部件 虽然即使是一个彻底的新手也应该能够完全理解,本书假定读者具备了一些编程经验 UYX外壳编程的知识会有些用处,但不是必须的。在有关 Window系统的方面,笔者提供 些背景信息。第2章阐述在UNX、 Window和 Macintosh上使用Tl和Tk的细节间题。 怎样阅读本书 本书的最好利用方式是动手在计算机上尝试范例。本书试图填补简活的Tc、详尽而缺 乏前后联系与范例的Tk操作说明以及现有的也许有也许没有文档化或者很好书写的Tc 程序之间的空白c 笔者推荐Tu和Tk命令的在线操作页。它们为每一个命令提供一个详细的参考指南。 本书总结了操作页的大量信息,但没有提供完全的细节,这些细节可能随着版本的变化而变 化。HTML版本的在线操作栏可以在随书的 CD-ROM上找到。 其他Te作 笔者推荐 John Qusterhgut的书,《 Tel and the k toolkit》( Addison-Wesley出版公司,1994 T心/Tk组合教程 年)。虽然只涵盖了T73和Tk36,但为Tel和Tk的各个方面提供了广泛的叙述。该书 在针对Tl扩展的C编程方面给出了更详细的探讨。 Don Libes撰写的《 Exploring Expects, Reilly &r Associates出版公司,195年)是一卒关 于一些极为有用的Td扩展的伟大著作。 Expect让用户自动使用一些交方式的,象ftp和tel net等一些希望和用户交互的程序。组合使用 Expext和Tk,可以为一些不能直接修改的老应 用程序创建图形用户界面。 Eric johnson编著的 Graphical Application with Tel&Tk》(M改T出版社,19年)趋向 于 windows用户。它基于Td75和Tk4.1,对Tl和Tk的基础部分很少探讨 Mark harrison执笔的《Tel/kToo》(0珠eily& associates出版公司,1997年)阐述了 许多有用的Tcl扩展。这些扩展包括0rack和 Sybase数据库接口、面向对象语亩的加强附 加的Tk部件等更多的内容。该书章节出相应Td护展的作者投稿,因此提供了Tl工具箱的 一些优秀扩展的权脱信息 John Iver撰写的 (CGI Developers Resource, Web Programming with Tel and Perl》(Pren tice hal|版公司,199年)介绍了针对网站编程的Tdl解决方案 Micheel mclennan和 Mark arrison共同执笔的《 Effective Tcl/ Tk Programming》(Add son-Wesley出版公司,1997年》范和程序设计的图表说明了T/Tk 在线范例 随书有一个 CD-ROM,里面包括所有示例的源代码外加一个因特网上的l自由软件精 选集。该 CD-ROW具有双重格式,在UNX和 Windows系统中可读的I09660分区和Mae tosh系统可读的HFS分区。那里还可以找到在木书付印时可得到T和Tk版本。读者也 可以通过ftp得到 Prerliceh出版的书中显示的源代码: ftp://ftp-rreahall, caith software/welch Ftp文档 Td和Tk发布的主要网址的URL( Univeral resourcc locatio,通用资源定位)如下: ftp: //tp str, pbB oam/pb/tcl 匿名登录可以利用FTP连接到该主机(例如 p. sunlabs0om)将你的Em叫il地址作为 码。目录在URL中主机名的后面(例如,pub/tl)。有许多站点镜像该发布。在镜修站 点也许可以看到叫作 Etp silicom的目录,那是fp, unlabs com的旧名称。镜修站点为投 稿的置命令、Tk部件和应用程序提供了一个存档的地方。还有常见问题的文件。下面这些 站点保存Ta文档: tp://ftp, ncsoft,amu/t1(主要文档站点) fp:ftp.sdd:.sr如b/tk ftp://ftp. =bp. fr 'gtcl Etp; //src. doc. ic- ac, uk//tcl fp:!/ftp.h,e或1 mittaL Etp: //sunsice cnlai-switch ch/irror/tcl 原书序 Etp: / /ftp. ster-ing, caryprmgraunminglanquages/tcl ftp: //ftp sunet se/pub/'lang'tcl 于://甲tp,Cs, columbia.e五,rh=C1 ftp://ftp. Lni-Paderorn de/put'umvtcl ftp: //sur1siLe, ur.edwy/rub languages/tcl p://Etg.funet. fi/puh'lannqjuagestcl 可以使用WWW浏览器,如 Mosaic, Nelscapt或者Lvnx访问这些站点。输人上面指出的 URL,就会出现该位置的目录列表。从那里可以改变目录和取走文件 如果没有直接的FTP通路,可以利用FTP的E-mi服务器。发送消息为“help”的Emil 到ftpmail@decwrl.dec.com,可以获得目录。在BNET的用户,发送到bitte@PuccpInce- 丐以使用能为匿名FTP服务器的内容做索引的自动搜索工具查找有Tc的FTP站点 关于使用白动搜索工具的信息可以通过发消息为“help“的Emal到 archie@ archie.sura.mr 获得。 万维网( World Wide weh 启动如下这些有关Td的WWW网页: http://nww.saigtics.unY Cttp://wwl.9Y aur/Tecnology/tclIcl html :atti /ww. terafozn. can/-lvirdeny/tcl-fsy/ 为本书建泳主页含有所有版本的勘误表。这是唯的由笔者个人控制的URL,本人计 划让它长期维持最新的信息 http://wwi.beed1b.com/book Prentice Hall本书这一版的设立网页为 http:/www.prenhall.crmooks/ptr013g1683c2.1tn1 为本书第一版的设立网页为: http://www.prenhal=.c'itxks/ptr0-31820079.html 新闻组 新闻组 comp. lang.td非营活跃。提供∫有关Tl问答的论坛。有关Td扩展和应用程 序的告示张贴在新闻组cmp,ang,tol, announce中。 版式约定 稍徽重要的示例由标题和水平线分开,而其他的就直接播入到段落中。示例对于Td和 C代码釆用 bEArer字体。T命令返回有意思的结果时那些结果以 counter斜体给出在命令 行的下面。下面的范例中,符号=>不是返回值的一部分。 一m Tc/Tk鈕合教程 trier字体也用句子中给T命令和C过程命名的时候 Iel命令的使用见下面的范例。命令名称和不变的关键词以 courier字体显示:变量数值 以 courier斜体出现。可选的参数由问号包围。 set parnaTe 程序名的宇体为 italics: xterm 热点提示( Hot Tipl 在页边空白区域的图标标记了一条本书评论家的“热点提示”。形象标志有助于查找书 中更重要些的部分。在 Hot Tip下的索引也列出了它们 本书的组织 本书的所有章节分成7个部分。第部分描述Td的基本特征:第1章介绍表征T诺 言的基本机制。这是重要的一章,提供了有效使用Td所需的基础。即便已经用Tcl编过程 序,也应该复习第1章第2章复习在UNIX、 Wiadows和 Mevinlushn上使用 Tcl tk的细 节。第3章给出一个样板应用程序演示典型Tcl编程的CGI脚本。第一部分的其余章节吏 详紐地覆盖了基本Tdl命令,包括字符串处理数据类型、控制流、过程以及作用域问题。第 部介以介绍文件1O工具和运行其他程序作为结束 第二部分阐述'd编程的崗级主题。这一部分从ea开始,ewl命令使得Tl程序快速成 形。规则表达式提供了强大的字符串处理能力。如果数据处理应用程序运行缓慢,利用规则 表达式工具也许可以显著{提高其性能。名称空间,个Tl8.0的新内容.可以分割过程和 变量的全局作用域。程序库和程序包提供了个供多个工程共享组织代码的方式。Tcl的内 检工具告诉用户Td的所有内部状态。事件驱动DO帮助服务器应用程序同时管理若干个客 网络Socket实现HTTP协议,该协议用来从万维网上取出网贞aSafe-Tcl提供一个安全 环境执行在网络中下载的应用程序。 第三部分介绍Tk。它对工具包⊥具做了综述。通过详细验让一些完整的范例来演示Tk 的特征。事件绑定将Td命令和事件关联起来,就像按键和点击按钮一样。第三部分以三章 关于Tk几何管理器的内容作为结束。该管理器提供了组织用户界面的强大工具。 第四部分描述Tk部件。包括按钮莱单、滚动条标签输人项、多行多字体文区画 布、列表框和标尺等。Tk部件的配置和编程具有很高的灵活性,并且它们的默认状态也使其 易丁使用。配置部件的资源数据库提供了一个简单的控制应用程序整体外观的方法 第五部分阐述Tk的其他具,包括选择、键盘焦点和标雅对话框。将详纽介绍字体颜 色、图做及其他Tk部件常见的属性。这一部分以一些稍大的示例作为结束。 第六部分是对C编程与Tl关系的介细。这部分讲解需要将Tl集成到一个客户应用程 序时怎样朝正确的方向开始。 第七部分有一章描述本书涉及的T/Tk的一个版本。它们提供了哪些特征改变了或者 添加了的细节。如果需要更新程序或者开始使用新的版本这些章节提供了快速参考。

...展开详情
试读 127P Tcl_Tk组合教程(第二版)——双语教材+多媒体教室
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
K5niper 挺好用的 简洁明了
2016-01-05
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
关注 私信
上传资源赚钱or赚积分
最新推荐
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室 36积分/C币 立即下载
1/127
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第1页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第2页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第3页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第4页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第5页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第6页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第7页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第8页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第9页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第10页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第11页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第12页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第13页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第14页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第15页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第16页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第17页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第18页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第19页
Tcl_Tk组合教程(第二版)——双语教材+多媒体教室第20页

试读结束, 可继续阅读

36积分/C币 立即下载 >