tcl tk 介绍 (英)

合集下载

Tk的发展历程

Tk的发展历程

Tk的发展历程Tk是一个开源的图形用户界面(GUI)工具包,最初是作为Tcl解释器的扩展而开发的。

它提供了一套用于创建GUI应用程序的丰富的工具和控件,并且易于使用。

Tk的发展可以追溯到1987年,由John Ousterhout在加州大学伯克利分校开发。

起初,Tk是作为Tcl(Tool Command Language)的一部分而开发的,Tcl是一种脚本语言,被设计用于系统管理和自动化任务。

在早期的版本中,Tk提供了一些基本的GUI元素,例如窗口、按钮、文本框等。

然而,随着时间的推移,Tk不断发展壮大,增加了更多功能和控件,使得开发者可以创建更复杂和功能丰富的GUI应用程序。

1991年,John Ousterhout将Tk和Tcl发布为开源软件,这导致Tk的流行度迅速增长。

由于其易于使用和跨平台的特性,Tk逐渐成为GUI应用程序开发的首选工具之一。

随着技术的不断进步,Tk也不断更新和改进。

最新的Tk版本(截至2021年)是8.6,它带来了一些新的功能和改进,包括更好的绘图性能、增强的字体渲染、更好的窗口管理等。

除了官方的Tk版本,也有其他基于Tk的衍生版本,例如Tix和Tile。

Tix是一个基于Tk的扩展,提供了更多的控件和工具,增强了Tk的功能。

Tile则是一个通过使用主题来定制Tk应用程序外观的库。

总的来说,Tk的发展历程是一个不断演进和改进的过程。

它从最初的基本GUI工具包发展为一个功能强大、易于使用并且广泛应用的GUI开发工具。

作为开源软件,Tk继续吸引着众多开发者的关注和贡献,为GUI应用程序开发提供了有力支持。

TCL语言.

TCL语言.

TCL语言Tcl(最早称为“工具命令语言”"Tool Command Language", 但是目前已经不是这个含义,不过我们仍然称呼它为TCL)是一种脚本语言。

由John Ousterhout创建。

TCL很好学,功能很强大。

TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。

TCL念作“踢叩” "tickle". Tcl的特性包括:* 任何东西都是一条命令,包括语法结构(for, if等)。

* 任何事物都可以重新定义和重载。

* 所有的数据类型都可以看作字符串。

* 语法规则相当简单* 提供事件驱动给Socket和文件。

基于时间或者用户定义的事件也可以。

* 动态的域定义。

* 很容易用C, C++,或者Java扩展。

* 解释语言,代码能够动态的改变。

* 完全的Unicode支持。

* 平台无关。

Win32, UNIX, Mac上都可以跑。

* 和Windows的GUI紧密集成。

Tk* 代码紧凑,易于维护。

TCL本身不提供面向对象的支持。

但是语言本身很容易扩展到支持面向对象。

许多C语言扩展都提供面向对象能力,包括XOTcl, Incr Tcl 等。

另外SNIT扩展本身就是用TCL写的。

使用最广泛的TCL扩展是TK。

TK提供了各种OS平台下的图形用户界面GUI。

连强大的Python语言都不单独提供自己的GUI,而是提供接口适配到TK上。

另一个流行的扩展包是Expect. Expect提供了通过终端自动执行命令的能力,例如(pass wd, ftp, telnet等命令驱动的外壳).下面是TCL程序的例子:#!/bin/sh# next line restarts using tclsh in path \exec tclsh ${1+"$@"}# echo server that can handle multiple# simultaneous connections.proc newConnection { sock addr port } {# client connections will be handled in# line-buffered, non-blocking modefconfigure $sock -blocking no -buffering line# call handleData when socket is readablefileevent $sock readable [ list handleData $sock ]}proc handleData {puts $sock [ gets $sock ]if { [ eof $sock ] } {close $sock}}# handle all connections to port given# as argument when server was invoked# by calling newConnectionset port [ lindex $argv 0 ]socket -server newConnection $port# enter the event loop by waiting# on a dummy variable that is otherwise# unused.vwait forever另外一个TK的例子(来自 A simple A/D clock) 它使用了定时器时间,3行就显示了一个时钟。

TCL 电视产品文档说明书

TCL 电视产品文档说明书

DISCOVER A NEW EXPANSE OF COLOURL9H SERIES TRICHROMA LASER TVInspired by a world of incredible colour at a scale that makes everything feel brand new. The 3000 Lumen ultra-short throw projection TV features the TriChroma laser engine to reach 107% of the BT.2020 Colour space. L9H series is upgraded to support Dolby Vision, bringing incredibly vivid details to life. Premium features like Dolby Atmos® High-Speed HDMI, Filmmaker Mode, and a perfectly paired screen make the L9H the ultimate home entertainment upgrade.The triple colour laser light source generates three original colours (Red, Blue and Green) directly without a spinning colour wheel. Wider Colour Gamut and continuous improvements in the Trichroma laser engine and screen create images what the human eyes truly see in nature.107%BT.2020 Colour space1.07 BillionColoursMeet the L9H TriChroma Laser TVPremium X-FUSION™ Laser Light Source• Red + Green + Blue Lasers • 107% BT.2020 colour space • 3000 Lumens Brightness• 4K Resolution, 60Hz Refresh • Dolby Vision• 40W Dolby Atmos ® Sound• High-Speed HDMI with eARC • WiSA Ready • Google TVGet that childlike grin of excitement as you re-experience allyour favorites at a scale that makes everything feel brandnew. The massive 120-inch Laser TV display uses Ambient LightRejection technology to produce an incredibly bright picturethat’s enjoyable in any viewing environment, light or dark. This isyour true living room projection TV to take sports, streaming, andgaming to the next level.3000 Lumens. That’s right, the L9H shines with brilliance so allyour 4K HDR content hits those shimmering highlights, vibrantColours, and voluminous blacks that make everything pop off thescreen. And with incredible brightness uniformity across the entireprojection — no vignetting, no falloff — L9H is a shining wall of light.With built-in 40W Dolby Atmos sound, L9H is a big sound-stageupgrade over those tinny speakers in your last TV. Get clearspeech, thrilling highs, and booming lows without having toinvest in any extra gear. For the true audiophiles, high-speedHDMI with eARC allows for pass-thru of high-bitrate audio toyour surround sound system.120″Laser TV Display3000Lumens40WStereo Sound80%Ambient Light Rejection2,000,000:1Dynamic ContrastUltra High Speed HDMIwith eARCBig Screen ExperienceA Bright Picture in Any Room Powerful Sound2xUltra High Speed HDMI (1 with eARC)1xHDMI 2.01x 2xUSB1xDigital Audio Out 1xPortsAll product, product specifications, and data are subject to change without notice to improve reliability, function, design or otherwise. ©2023 Hisense Canada, All rights reservedHisense Canada Co., LtdUnit 1, 2550 Meadowvale Blvd, Mississauga, ON L5N 8C2 1-855-344-7367PhysicalConsole Dimensions 24” x 6.1” x 13.6” (W x H x D)Console Weight 24.7 lbsScreen Dimensions 104.6” x 60.4” x 1.4” (W x H x D)Screen Weight34.2 lbsOver box/Package Dimensions 69.1” x 25.7” x 20.1” (W x H x D)Over box/Package Weight110.3 lbsPictureProjection Size 120”Brightness3000 Lumens Resolution / Refresh Rate 4K@60Hz Colour Space 107% BT.2020Contrast Ratio 2,000,000:1 (dynamic)HDRHDR10, HLG, Dolby VisionLight Source Red + Green + Blue Trichroma Laser Laser Life 25,000+ Hours Throw Ratio 0.25:1Chipset0.47” DMDAudioAudio Output Power 40W (Stereo)Surround SoundDolby Atmos, Dolby DigitalSmart FeaturesSmart TV Platform Google TV (Google Certified)App StoreGoogle Play StoreStreaming Services Netflix, Disney+, HBO NOW, Hulu, Prime Video, SHOWTIME, Pandora, Sling TV, YouTube Voice Assistant Google AssistantWorks With Hey Google, Amazon Alexa Screen MirroringChromecast, AirPlay 2ConnectivityWi-Fi 802.11a/b/g/n/ac (Dual-Band, Wifi 6e)Bluetooth Yes Wired EthernetYesPowerPower Consumption 320W Standby Consumption <0.5W Power SupplyAC 120V, 60HzPortsHDMI2x HDMI 2.1 (ALLM), 1x HDMI 2.0HDMI ARC, CEC 1x (eARC on HDMI port 2)USB 1x USB 3.0, 1x USB 2.0RF Antenna 1x Ethernet (LAN)1x Digital Audio Output 1x Optical Analog Audio Output1xOther FeaturesNoise Reduction Yes Parental Controls Yes Closed Caption Yes Sleep Timer Yes Eye Safety Yes MEMCYes Remote FinderYesAccessoriesRemoteYes, voice remote with backlight Quick Start Guide / Manual QSG in box, Manual online Power Cable Yes Cleaning KitYesScreenScreen Size 120” diagonalTypeLenticular ALR (Ambient Light Rejecting)Resolution4K Ambient light obscuring ratio 85%Gain0.6Viewing Angle 150°Frame Fix (assembly required)Install Manual Yes Mounting Brackets Yes GlovesYesWarranty 2 Years limited warranty UPC/EANUPC: 888143014661EAN: 6942147488973Setup DiagramsH14 5/8”L111 7/8”W>90”H1>68”H261”Recommended TV stand height: <20”TECHNICAL SPECIFICATIONSLaser Model | 120L9H-DLT100C CONSOLETV STANDTV STANDH1(Minimum wall height)(mounting bracket holes)。

2024版年度TCL培训教程笔记

2024版年度TCL培训教程笔记

目录•TCL基础概念与特点•TCL基本语法与数据结构•TCL过程与函数定义调用•TCL扩展功能库使用指南•TCL界面编程技术实践•TCL网络编程应用实例•TCL测试与调试技巧分享TCL基础概念与特点01TCL(Tool Command Language)是一种广泛应用的嵌入式脚本语言。

02发展历程:起源于20世纪80年代,由John Ousterhout教授创建,至今仍在不断更新和发展。

03主要应用于快速原型开发、自动化测试、GUI应用程序等领域。

TCL定义及发展历程TCL语言特性与优势01语言特性简单易学、动态类型、面向对象、可扩展性强。

02优势跨平台兼容性好,易于与C/C等语言集成,提供丰富的库函数和工具。

应用领域及案例分析应用领域自动化测试、网络编程、嵌入式系统开发等。

案例分析如使用TCL进行自动化测试脚本编写,提高测试效率;在嵌入式系统中利用TCL实现动态配置和功能扩展。

开发环境与工具介绍开发环境支持多种操作系统,如Windows、Linux、macOS等。

工具介绍常用的开发工具有Tclsh、Tk、Expect等,分别用于命令行交互、GUI开发和自动化控制。

TCL基本语法与数据结构变量、数据类型与运算符01变量声明与赋值TCL中变量无需事先声明,直接使用`set`命令进行赋值,例如`set x10`。

02数据类型TCL支持多种数据类型,包括整数、浮点数、字符串等。

数据类型之间可以自动转换。

03运算符TCL支持常见的算术运算符(如+、-、*、/)、比较运算符(如==、!=、<、>)和逻辑运算符(如&&、||)。

循环结构TCL提供`for`和`foreach`循环结构,用于重复执行某段代码。

其中,`for`循环可以指定循环次数和步长,`foreach`循环则遍历列表或数组中的元素。

条件语句TCL中使用`if`、`elseif`和`else`关键字构成条件语句,根据条件执行不同的代码块。

TCL培训教程(全)

TCL培训教程(全)

01
```
02
如果一切顺利,您将在终端中看 到输出`Hello, World!`。
变量、数据类型和运算符
• 变量:TCL中的变量不需要事先声明,可以直接赋值。变量名 可以以字母或下划线开头,后面可以跟字母、数字或下划线。 例如
变量、数据类型和运算符
```tcl
set myVar "Hello"
变量、数据类型和运算符
通过本项目,我们成功构建了一个简易的Web服务器 ,实现了HTTP协议的基础功能,并集成了CGI支持动 态网页生成。 展望与改进
在性能和安全性方面也可以进行进一步优化和提升。
THANKS FOR WATCHING
感谢您的观看
02
讲解使用TCL进行网络数据发送和接收的方法,包括数据的编码
、解码以及错误处理。
Socket事件处理
03
阐述如何处理Socket连接、断开、数据接收等事件,实现实时
网络通信。
图形界面开发(Tk)
Tk基础组件
介绍Tk中常用的基础组件,如标 签、按钮、文本框等,以及它们
的属性和方法。
布局管理
讲解如何使用Tk的布局管理器,如 pack、grid、place等,对界面进 行布局。
实现HTTP协议基础功能
生成HTTP响应 根据请求内容生成相应的HTTP响应。 构造响应行、响应头和响应体,并发送给客户端。
集成CGI支持动态网页生成
CGI概述
CGI(Common Gateway Interface)是一种服务器与外 部程序交互的规范。 通过CGI,服务器可以调用外部程序生成动态内容。
SQL语句执行
阐述如何在TCL中执行SQL语句 ,包括查询、插入、更新和删 除等操作。

TCL教程(中文)(2024)

TCL教程(中文)(2024)

B
C
D
脚本执行过程
详细剖析TCL脚本的执行过程,包括命令 解析、变量替换、执行结果输出等步骤。
控制结构
介绍TCL中的条件判断(if-else)、循环 (foreach、while)等控制结构,以及如 何使用它们来编写逻辑清晰的脚本。
2024/1/29
20
复杂脚本优化技巧分享
代码重用与模块化
讲解如何将重复的代码片段抽象成函数或过 程,实现代码重用和模块化,提高脚本的可 维护性和可读性。
比较运算符
TCL支持比较运算符,如等于(`==`)、不等于(`!=`)、大于 (`>`)、小于(`<`)等。比较运算的结果为布尔值,即真或假 。
逻辑运算符
TCL支持逻辑运算符,如逻辑与(`&&`)、逻辑或(`||`)、逻 辑非(`!`)等。逻辑运算用于组合多个条件,并根据条件的 真假返回相应的结果。
TCL教程(中文)
2024/1/29
1
目录
2024/1/29
• TCL基础知识 • TCL基本语法 • TCL高级特性 • TCL扩展功能 • TCL实例分析 • TCL学习资源推荐
2
TCL基础知识
01
2024/1/29
3
TCL概述
TCL是一种脚本语言
TCL代表“工具命令语言”,是一 种广泛用于嵌入式系统和应用程 序的脚本语言。
I/O流处理
TCL支持I/O流的概念,可以通过管道命令实现不同命令之间的数据传 递和处理。
2024/1/29
14
TCL扩展功能
04
2024/1/29
15
Tk图形界面开发库介绍
Tk概述
Tk是TCL的图形用户界面工具包, 提供了一套丰富的图形控件和布局 管理器,用于创建跨平台的GUI应 用程序。

TclTk 命令与 CC 的集成研究 梁伟杰,蒋科艺,吕剑锋

TclTk 命令与 CC  的集成研究 梁伟杰,蒋科艺,吕剑锋

Library function was present.
Keywords: Tcl/Tk command, Tcl/Tk C DLL, integration
1. 问题来源
基于虚拟现实的维修性分析评价系统(以下简称 VMSAS)是为适应产品无纸设计、分析、评审的需 要,以人机工效商业软件 JACK 为平台,由本单位进行二次开发形成的一个维修性设计分析评价系统,主 要功能包括样机建模、动作建模、维修仿真与检测、维修性分析与评价等。
基金项目:国家自然科学基金资助项目:并行设计中产品维修性模型研究(编号:50005023),“十五”武器装备预 研项目资助。
作者简介:梁伟杰(1980.05~),男,汉族,硕士生,研究方向为维修性理论与应用。通讯地址:石家庄军械工程学 院六系维修工程实验中心,050003。联系电话:0311-86879059。蒋科艺(1977~),男,汉族,博士生, 主要研究方向为虚拟维修仿真以及应用。吕剑锋(1981~),男,汉族,硕士生,研究方向为维修性理论 与应用。
在用户的 C/C++程序中,为了能够访问 TCL/TK 库,必须在源代码声明两个调用库的头文件,即"tcl.h" 和"tk.h"两个文件。要建立混合 Tcl/Tk 和 C/C++应用程序,须按如下方式进行: 3.1 调用"Tcl_Main"函数(Tk_Main 原理相同)
Tcl_Main(argc, argv, Tcl_AppInit),用来控制整个 Tcl 解释器程序,没有返回值。这是一种较为高级的 接口,可以替用户创建解释器、处理命令行变元来执行脚本,提供交互式命令循环等。"Tcl_Main"函数有 三个变量:第一个变量表示在这个数组的元素个数;第三个变量是指向初始化函数的指针;第二个变量是 一个字符串型数组,每个字符串都有一个特殊的含义。字符串数组通过"Tcl_Main"来通知 Tcl/Tk 解释器应 用程序的名称和 Tcl/Tk 命令在脚本中的位置。这个数组实际上是传给解释器的命令行参数。数组的第一项 给出应用程序名称,第二项给出了运行的脚本位置。

TclTk的数学操作运算命令

TclTk的数学操作运算命令

Tcl Tk的数学操作运算命令连结所有的arg(在它们之间添加分隔符,空格)作为一个Tcl表达式评估,并返回结果。

Tcl表达式中所允许的操作符是C表达式操作的一个子集。

表达式总是产生一个数值结果(整数或浮点数值)。

例如,表达式:expr8.2+6,评估的结果是14.2。

Tcl表达式支持非数值的操作数和字符串比较(这点与C的表达式不同),包含有整数,浮点数和字符串的表达式,会自动地执行适当的类型转换。

操作数Tcl表达式由操作数,运算符和圆括号组成。

在操作数,运算符和圆括号间可以使用空白字符。

可能的话,操作数是作为整数值解释。

整数值的表示方式有:十进制(通常的表示方法),二进制(如果操作数头两个字符是0b),八进制(如果操作数头两个字符是0o),或者十六进制(如果操作数头两个字符是0x)。

为了与旧版本相兼容,八进制整数值的第一个字符可以简单地用0表示,而不管第二个字符是不是o。

如果操作数不是上述整数形式中的任何一种,则如果可能的话,它被视为是浮点数。

浮点数的数字包括:十进制的数字,小数点".",字符e或E(表示科学记数法),和符号字符+或-。

例如,下列都是有效的浮点数:2.1,3.,6e4,7.91e+16。

字符串Inf和NaN也被认为是浮点数值。

如果不能作为数值解释(注意,操作数不是数值或布尔值的,必须用花括号或双引号括住),则操作数就是字符串。

操作数可以是下列任何的一种:[1]数值,整数或浮点数。

[2]布尔值,使用由stringisboolean可理解的任何形式。

[3]变量,使用标准的$表示法。

变量的值可以用作操作数。

[4]双引号括住的字符串。

表达式解释器会执行反斜杠、变量或命令替换,而其结果作为操作数。

[5]花括号括住的字符串。

花括号间的字符作为操作数,而不会执行任何的替换。

[6]中括号括住的Tcl命令。

命令会被执行,而其结果作为操作数。

[7]数学函数。

其参数是上面任何形式中的一种,如,sin($x)。

Fortran与Tcl混合编程以及VTk图形可视化的研究

Fortran与Tcl混合编程以及VTk图形可视化的研究

Fortran与Tcl混合编程以及VTk图形可视化的研究王江超;赵宏权【摘要】由于科学数值计算语言Fortran在图形处理以及可视化方面的不足,提出了以脚本语言Tcl(Tool Command Language)作为主语言,与Tk(Toolkit)一起进行图形界面等方面的开发设计,并且直接使用强大的图形处理工具包VTk(Visualization Toolkit),轻松实现可视化.同时,在Tcl中,嵌入Fortran语言,实现混合编程,进行功能扩展.以焊接生产中的纵向收缩力(Tendon Force)与焊接热输入的关系为示例,展示如何以若干个基本数据为基础,通过在Fortran中实现最小二乘法来进行线性拟合;然后,所有的计算分析过程都会在Tcl/Tk构建的主程序用户界面GUI(Graphic User Interface)中实时显示出来;最后,主程序调用VTk图形处理工具包,将所有基本数据以及计算拟合的线性函数进行可视化处理.【期刊名称】《造船技术》【年(卷),期】2016(000)005【总页数】5页(P96-100)【关键词】图形用户界面;VTk可视化;混合编程;最小二乘法;焊接纵向收缩力【作者】王江超;赵宏权【作者单位】华中科技大学船舶与海洋工程学院,湖北武汉430074;江苏科技大学材料科学与工程学院,江苏镇江212003【正文语种】中文【中图分类】TP391自1946年,世界上第一台真正意义上的计算机发明和应用以来,计算机在之后的数十年间快速发展并在各行业中广泛使用。

而且,伴随其产生的计算机语言更是发展迅猛,到目前为止,大约有30多种计算机语言在不同的计算机平台和不同的行业中被使用。

作为主要的科学数值计算语言,Fortran (Formula Translation的缩写)是世界上公认最早出现的计算机高级程序设计语言。

因其具有快捷及强大的数值计算能力,被广泛地应用在科学和工程计算领域,其最大特点是对数字公式的直接描述和使用,在计算机里具有很高的执行效率[1]。

TclTk的列表处理命令

TclTk的列表处理命令

TclTk的列表处理命令concat ?arg arg …?此命令把每个参数连接在⼀起,并去掉第⼀个参数和最后⼀个参数前的前导和尾部空⽩。

如果所有的参数都是列表,则把所有的列表并置为单⼀的列表。

此命令可以有任意数量的参数arg;如果没有提供参数arg,则此命令的结果是⼀个空字符串。

例⼦:concat会连接列表,所以下⾯的命令:concat a b {c d e} {f {g h}}会返回“a b c d e f {g h}”。

此命令也可连接⾮列表的数据类型,因此下⾯的命令:concat “ a b {c “ d “ e} f”会返回“a b {c d e} f”。

注意,并置不会删除参数间的空⽩,所以命令:concat “a b c” { d e f}会返回“a b c d e f”(a,b,c之间有三个空格)。

join list ?joinString?把列表的元素连接起来⽽创建⼀个字符串。

参数list必须是效的Tcl列表。

此命令返回格式化后的字符串(把列表list的所有元素⽤字符串joinString连接相邻的元素⽽构成)。

参数joinString默认为是⼀个空格字符。

例⼦:⽤逗号分隔列表的元素:set data {1 2 3 4 5}join $data ", "→ 1, 2, 3, 4, 5使⽤join去展平列表为单层的列表:set data {1 {2 3} 4 {5 {6 7} 8}}join $data→ 1 2 3 4 5 {6 7} 8lappend varName ?value value value …?把值添加到列表中。

此命令把变量varName视为列表,并且把每个参数value作为单独的元素添加到列表varName的值中,每个元素⽤空格分隔。

如果varName不存在,则被创建为列表,⽽其值就是参数value。

lappend与append相似,除了value是作为列表被添加⽽不是作为原始的⽂本。

一种高效的可扩展的GUI开发工具—Tcl/Tk

一种高效的可扩展的GUI开发工具—Tcl/Tk

一种高效的可扩展的GUI开发工具—T cl/Tk第27誊第4期西南民族学院学报?自然科学版journalofS’outhwestUniversityforNationalities.NaturalScienceEdition文章编号i0tl3.2843c2001】04—0402-04一种高效的可扩展的GUI开发工具——Tcl/Tk刘莉.马丽,伍珂l西南艮袭学院计算机科学与技丰学院,成都51004112中国联通四)¨分公司,成都610036, 摘要:Tcl/Tk是一种简明,高效,可移植性好的具有C/C++应用编程接口的编程语言.本文介绍其特点,优势和结构,并详细描述了如何用C语言创建新的Tc】/rrk命令关键词:tcL/tk;图形用户界面(GUI);解释器中图分类号:TP311.1文献标识码:A1Tcl/『k的特点本文讨论两个称为Tcl和Tk的包,它们提供了一个开发和利用图形用户界面(GU1)的应用程序编程系统Tel代表”toolcommand[anguage”,读为”tickle”,是一个用于控制和扩展程序的简单的脚本语言,它提供一般的对各种应用程序有用的编程环境,比如:变量,循环,子程序等而且,Td是可嵌人的:它的解释程序是作为一个c子程序库来实现的,可以很容易地和应用程序组合成一体,并且每个应用程序都可以通过扩展其所特有的的命令来扩展1’cl核心.Tcl一个撮有用的扩展是Tk,它是xWindow系统的工具包,读为”tee-key”Tk通过增加建立用户接口命令来扩展Tc[核心,使用户可以通过写Tcl脚本而不用写c代码来创建motif用户接口.与Td相同,Tk也是作为一个c子程序库来实现的,所以它也可以用于各种不同的应用程序中各个应用程序也可以用c 编写的Tk的用户接Vl构件(widgets)和geometrymanagers来扩展Tk基础特征Tel/Tk为应用程序开发者和用户提供了四个方面的好处:第一.Tcl为应用程序提供了一功能强大的脚本语言,应用程序所需要做的就是实现一些新的提供应用程序基本特征的Tel命令,然后把这些程序同Td解释程序相链接以提供一个全功能脚本语言,它既包含了Tel所提供的命令(称为Telc0re)又包含了由应用程序所实现的那些命令.例如,一个阅读电子公告板的应用程序包含实现一个查询电子公告板的Tcl命令的C源代码,以及另一个提取给定信息的Tcl命令.一旦这些命令存在以后,我们就可以写出Td脚本来循环地从所有的电子公告板中获取新信息并且每次显示一条,或者在磁盘文件中记录哪些信息已经被读哪些还没有?或者从一个或更多的电子公告板中查找某个特定主题的信息这些电子公告板应用程序将不必用c来实现这些附加的函数;它们可以作为Tcl脚本来写,应用程序的用户们还可以写出其它的Tcl脚本来为应用程序添加更多的函数. Td厂rk的第二个好处在于它的快速的开发速度许多有趣的窗口应用程序可以完全用TcL 脚本来写而不用一点c代码,通过使用一个称为wish的窗口shell米完成这就使用户比用c或c++编程高了一个级别,它为用户隐藏了许多c程序员必须强调的细节,与完全用c编程的工具包相比,比如Xt/Motif,使用Tcl/Tk所需要学习的东西更少,所需要写的代码也更少,Tcl/Tk的新手在学习几个小时后就可以创建有趣的用户接口许多人在从其它工具包转向Tcl/Tk后,代码量和开发时阃减少了十倍另一个Tcl/Tk快速开发的原因是Tcl是一个解释性的语言,当使用象wish这样的Tcl应用程序时,用户可以临时地生成和执行新的脚本而不需要重新编译或重启应用程序,这允许用户迅速地检验新的想法和确定bug当然,由于Tcl是解释型的,它的执行速度比编译后的c代码要慢得多但是现在的工作平台速度都非常快,只有在少数的情况下,当性能成为问题时,用户可用C来重新实现Tcl脚本中影响性能的最关键的部分.TcI的第三个好处是它成为了一种极好的”胶水语言”,因为它是可嵌人的,它可以在许多不同的程序中用于收稿日期:2001.09—03作者简介:刘莉(1965一).女,西南民族学院计算机学院讲师第4期刘莉等:一种高效的可扩展的GUI开发工具——Tcl,rk403各种不同的目的这样的话,那么写出结合所有程序特征的Td脚本就成为可能例如,任何建立在Tk基础上的窗口应用程序可以向其它的Tk应用程序发布一个Tel脚本这个特点使得多媒体效应更加容易达到:一旦用T_k建立了音频的和视频的应用程序,任何Tk应用程序都可以向它们发出”record”和”play”命令另外,电子数据表也可以由数据库应用程序来更新它自己,用户接口编辑器可以修改正运行的活动的应用程序的外观和性能等等,Tcl提供了允许应用程序一起工作的混合语言Tcl的第四个好处是使用的方便性.一旦一个用户了解了Tel/I’k后,他只需学会用于新的应用程序的几个特定的命令,就能写出该Tcl/I’k应用程序的脚本来,这就使更多的用户能够提高和个性化他们的程序正如每一种语言都以”Helloworld1,做为其第一个程序,让我们看看Tel/rk的”Helloworld”: buttonb—text”HelloWorldcommandexitpab程序的运行结果是:这简简单单的两行命令,就已经实现了一个窗口程序所具有的全部功能,并且它还可以不加任何修改地运行在X—Windows和MSWindows系统上.用鼠标点击该按纽或按空格键,该窗13将关闭,程序将退出.2用C语言创建新的Tcl/Tk命令T[:l门rk中易于增加用C/C++实现的新命令用C/C++的原因有两个,一个是因为用C/C++实现比Tcl/rk实现的效率要高些,另一方面是因为有些应用无法用T[:l/rk实现,例如与硬件相关的设备的编程接13就不能用Tcl脚本存取一种创建新的Td命令的方法是写出标准的独立的C子程序,并用Tel的exec命令来运行这些程序还有一种方法是把Td看成为一个c程序库,该库很容易集成到现有的应用程序中,通过掭加Tel解释器,你可以用Tcl脚本来配置和控制你的应用程序,再通过用Tk为程序提供一个更好的图形界面,这是Tcl最有独创性的模式.本文讨论第二种方式.首先,我们先了解一些相关的内容和例程,然后再实现新的TcI命令2.1应用程序的结构包含Tel解释器的应用程序的总体结构如图所示l’l上电YburrApcad.TU_____JCTclC代码库实现了解释器和set,while,proc之类的核心Tel命令,应用程序所特有的命令则用C/C++语言实现并注册为解释器中命令,当T_cl脚本中用到这些应用程序特定的命令时,解释器将调用这些C代码命令子程序命令子程序是在你的应用程序所能做的工作之上的有代表性的薄薄的一层.最后,你可以在C/C++中用Tcl—Eval函数直接调用TcI/Tk命令22TclMain和Tcl—ApplnitTcl库通过Fcl—Main函数来支持基本的应用结构,该函数由main程序调用,它完成三方面的工作:(1)建一个包含所有标准Tcl命令(如:set,proc等)的解释器,同时也定义了几个象argc,a瑁v 这样的Td变量,它们包含有传递给你的应用程序的命令行参数西南民族学院学报?自然科学版第27卷(2)调用Tel—Applnit函数,该函数不属于Tel库.由你的应用程序提供该函数.在Tcl—Applnit 中,你可以注册应用程序特有的Tcl命令(3)它读人一个脚本或进入一个交互式的循环中类似地,Tk—Main也具有同样的功能由于TkMain包含了Tel—Main,若你使用到了Tk命令,则只需要调用Tk—Main3用C语言创建自己的Tel命令创建自己的Td命令相对比较容易,当然,你需要存取Tel/Tk的库和头文件以及使用C和C++的编译器最简单的方法就是在main()函数中调用TelMain(),如下面的eqcmdc程所示.eqcmd.c程序用C创建了一个新的Tcl命令从Tel的观点看,该命令称为Eq.调用TclCre~teCommand函数把命令名”Eq”和C函数Eqcmd()相连接,程序代码如下#inc[ude”stdioh”#include”stdlib,h”#include”telh”/*实现了一个名为Eq的Tel命令.它比较两个参数看是否相等,相等时返回值1,否则返回0*/ intEqC~d(ClientDataclientDataTcl—Interpinterp,intargc.charargvlJ){if(argc!=3)}interp一&gt;result=“wrong#args”:retumTCL—ERROR;*fif(strcmp(argv[1],argv[2]):=0)interp一&gt;result=“l”:lelse{interp一&gt;result:…0’;returnTCL一0KintTelApplnit(Tcllnterpinterp)/*该函数注册一个新的Tel命令*/mtstatus;status:Tcl—lnit(interp);/*初始化Tcl/Tk*/if(status!=TCLOK)}returnTCLERROR:Tel—Cre~teCommand(interp,”Ecj”,(TelCmclProc*)EqCmd,(ClientData)NULL,(Tel—Cmd—DeleteProc*)NUII);/*把C函数EqCmd注册为一个Tel命令Eq*/TcI—RcFileName=“~/.myapptel”;/*定义启动文件名.程序如果运行在交互式环境下,该文件将被读人intmaln(intargc,char**argv)第4期刘莉等:一种高效的可扩展的GUI开发工具——Tc1/1_k405/*把命令行参数传给Tcl—Main(),它将调用TdApplnit函数*/TclMain(argc,argv,TclApplnit)return0:编译运行以上程序后,你可以像其他Tcl命令那样在脚本中调用Eq命令EqabcclefOEql1lsetW.dig;setw2dlgokEq$wok$w214结束语“小巧,易学,高效,跨平台执行”是Tcl语言特点的集中体现.实际上,Tcl不仅仅在开发小的应用程序上有其快速,可维护强的优势,在大的应用系统方面,如操作系统及网络管理,测试系统,自控,仿真,可视化应用,计算机辅助设计等都有丰富的应用成果在商业应用方面,如SYBASE公司花费上千万美金的数据库自适应测试系统,Cygnus公司着名的集软件工程管理,源代码控制于一体的SourceNavigator,以及CayenneSoft的协同工作组件ObjectTeam等等都是应用Tcl/Tk开发的.本文的目的就是期望该工具在国内得到更广泛的使用参考文献[1]OusterhoutJKTdondTkToolkit.Addis[~一WesleyPuNishingCompany.1994[2]Welch】BPracticalProgranmlirlgiaTdandTkPrentice-HallPTR.1995[3]陆步飞,Tcl/rk大垒.中国互动出版剐htro://wwwchinapub AnEfficientExtensibleGUIDevelopmentT00l|【it——cl/】LIULi,MALi,wuke2(1D印anmentComputerSdenceandTechnology,SouthwestUniversityForNationalities,Chengdu6100412ChinaUnitedTdecn~rnmunicationsCorporatien,SichuanBr0nch,Chengdu610036)Abstract:Tcl/Tkisaconcise,efficient,portableprogramminglanguagewithC/C++applicationprogra m—minginterface.Thispaperintroducesitsspecialities,advantages,architecture,andprovidesdetaileddes criptonofhowtocreateanewTc1厂rkoommandinCKeywords:Tcl/Tk;graphicaluserinterface;interpreter。

TCL Scripting Fundamentals(TCL 快速入门上手指导)

TCL Scripting Fundamentals(TCL 快速入门上手指导)

Contents1. WWWH About TCL .............................................................................................................. - 2 -1.1 . What is TCL ................................................................................................................. - 2 -1.2 . Why TCL ..................................................................................................................... - 2 -1.3 . When shall we use TCL ............................................................................................... - 3 -1.4 . How to program using TCL ......................................................................................... - 3 -2. TCL Basics .............................................................................................................................. - 4 -2.1 . Variables and Substitution ............................................................................................ - 4 -2.1.1 Command set and unset ...................................................................................... - 4 -2.1.2 Command append................................................................................................ - 4 -2.1.3 Command incr ..................................................................................................... - 5 -2.2 . Math Expressions ......................................................................................................... - 5 -2.2.1 General Math Expressions .................................................................................. - 5 -2.2.2 Math Functions ................................................................................................... - 6 -2.3 . String Manipulation ..................................................................................................... - 7 -2.3.1 Command string .................................................................................................. - 7 -2.3.2 Command format .............................................................................................. - 12 -2.3.3 Regular Expression ........................................................................................... - 14 -2.4 . List Manipulation ....................................................................................................... - 18 -2.4.1 Basic TCL List Commands ............................................................................... - 18 -2.4.2 Advanced TCL List Commands ........................................................................ - 20 -2.5 . File Operations ........................................................................................................... - 23 -2.5.1 Command open ................................................................................................. - 23 -2.5.2 Command file .................................................................................................... - 26 -2.6 . Control Flow .............................................................................................................. - 29 -2.6.1 The if command ................................................................................................ - 29 -2.6.2 Looping and Loop Control commands .............................................................. - 30 -3. TCL extensions ..................................................................................................................... - 32 -3.1 . TCL Package Expect .................................................................................................. - 32 -3.2 . TCL Package Tnm ...................................................................................................... - 33 -4. Appendix ............................................................................................................................... - 36 -4.1 . Appendix A, String Commands .................................................................................. - 36 -4.2 . Appendix B, List Commands ..................................................................................... - 37 -4.3 . Appendix C, Flow Control Commands ...................................................................... - 38 -4.4 . Appendix D, Math Functions ..................................................................................... - 38 -4.5 . Appendix E, References ............................................................................................. - 39 -1. WWWH About TCL本文是针对那些对TCL没有或者有一些基础认识的测试工程师,这个标题中的WWWH 并不是一个英文单词,而是一个缩写,这个缩写所提出的问题也基本上是本文所要提出并解决的问题;他们分别是What—什么是TCL、Why—为什么要使用TCL、When—什么时候我们该使用TCL、How—如何使用TCL。

tcl表示工具命令

tcl表示工具命令

tcl表示工具命令第一部分:TCL基本知识一.简介Tcl 表示工具命令语言(Tool Command Language),它是一种流行的脚本编制语言,最初由加州大学伯克利分校的John Ousterhout 教授开发。

John Ousterhout 打算将 T cl 作为一种将其它程序组件粘合在一起的语言,既可以以同其它脚本语言相同的方式将Tcl 用作交互式shell/脚本解释器,也可以将其作为脚本解释器嵌入您自己的C 应用程序。

在这种方式下,它就变成了一种向您自己的程序中添加脚本编制控制的方法,并且它提供了一些接口,这些接口允许您用自己的以 C 语言实现的脚本命令扩展基本 Tcl 语言.Tcl 还有各种扩展,诸如Tk,UI 工具箱,以及Expect,Expect 是一种扩展,用于自动化同其它基于 shell 的命令(例如 telnet 和 ftp)的交互。

Tcl是一种很通用的脚本语言,它几乎在所有的平台上都可以解释运行,功能强大。

Tcl包含了两个部分:一个语言和一个库。

首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一些互交程序如文本编辑器、调试器和shell。

它有一个简单的语法和很强可扩充性,T cl可以创建新的过程以增强其内建命令的能力。

其次,Tcl是一个库包,可以被嵌入应用程序,Tcl的库包含了一个分析器、用于执行内建命令的例程和可以使你扩充(定义新的过程)的库函数。

应用程序可以产生T cl命令并执行,命令可以由用户产生,也可以从用户接口的一个输入中读取(按钮或菜单等)。

但Tcl库收到命令后将它分解并执行内建的命令,经常会产生递归的调用。

脚本语言的优势:快速开发:脚本语言极大地简化了“开发、部署、测试和调试”的周期过程。

容易部署:大多数脚本语言都能够随时部署,而不需要耗时的编译/打包过程。

同已有技术的集成:脚本语言被Java或者COM这样的组件技术所包围,因此能够有效地利用代码。

易学易用:很多脚本语言的技术要求通常要低一些,因此能够更容易地找到大量合适的技术人员。

ANSYS二次开发中APDL语言与TclTk语言结合的方法

ANSYS二次开发中APDL语言与TclTk语言结合的方法
z Double quotes group words into a single argument.
z Curly braces group words into a single argument, however, elements within the braces are not interpreted.
Returns an ANSYS array
Copyright© 2002
Computer Aided Engineering
Computer Aided Engineering Associates, Inc.
8
Associates, Inc.
Tcl/Tk in ANSYS GUI Development
Tcl Expression
set x 2 set y $x
Result
x=2 y=2
set z [expr $x+$y]
z=4
set t “z is $z” t=“z is 4”
set t {z is $z} t=“z is $z”
Copyright© 2002
Computer Aided Engineering
Copyright© 2002
Computer Aided Engineering
Computer Aided Engineering Associates, Inc.
5
Associates, Inc.
Tcl/Tk in ANSYS Command Structure
z Tcl/Tk syntax is simple — similar to sh, C, and Lisp.
— Cross-platform compatible.

tcl_tk编程,tcl_tk编程教程

tcl_tk编程,tcl_tk编程教程

Tcl / Tk 大全 (1)一. Tcl / Tk简介 (1)1.1 背景 (1)1.2 定义 (2)二. Tcl / Tk基础 (2)2.1 交互方式 (3)2.2 非交互方式 (3)三. TCL总体结构图 (4)四. 与其它语言的比较 (4)五. TCL语法 (5)5.1 t c l 命令结构. (5)5.2 TCL 的注释 (5)5.3 数据类型 (5)5.4 变量 (6)5.5 字符串的操作 (8)5.6 引用和置换 (10)5.7 流的控制 IF 和 SWITCH (12)5.8文件的输入输出和文件的信息 (14)5.9 过程 (16)六.工具箱 (17)6.1 构件的介绍 (17)6.2 创建构件 (18)6.3 构件的选项 (18)6.4 一个TCL./TK 构件的编程示例 (19)七. 小结 (20)Tcl / Tk 大全摘要: Tcl/Tk 是一种简明,高效,可移植性好的编程语言。

在信息产业领域具有广泛的应用。

本文描述了TCL/TK成长历史,特点,优势及应用范围,阐述了TCL/TK的总体结构图,比较了TCL/TK与当今流行的C++,Java 的性能比较,详细阐述了TCL/TK的语法,并介绍了TK的工具箱.一. Tcl / Tk简介1.1 背景Tcl/Tk 的发明人 John Ousterhout 教授在八十年代初,是伯克利大学的教授。

在其教学过程中,他发现在集成电路 CAD 设计中,很多时间是花在编程建立测试环境上。

并且,环境一旦发生了变化,就要重新修改代码以适应。

这种费力而又低效的方法,迫使Ousterhout 教授力图寻找一种新的编程语言,它即要有好的代码可重用性,又要简单易学,这样就促成了 Tcl (Tool Command Language) 语言的产生。

Tcl 最初的构想的是希望把编程按照基于组件的方法 (component approach),即与其为单个的应用程序编写成百上千行的程序代码,不如寻找一个种方法将程序分割成一个个小的, 具备一定“完整”功能的,可重复使用的组件。

原创-TclTk学习笔记

原创-TclTk学习笔记
¾ regexp { ([0-9]+) *([a-z]+)} “ there is 100 apples” total num word →1 ¾ puts “ $total ,$num,$word“ →100 apples ,100,apples ¾ regexp可以设置一些开关(switchs〕,来控制匹配结果:
¾ 正确的做法:file delete {*}[glob *.o]
¾若字符串以{*}开头,后面紧接非空白字符,Tcl 会移除开头的{*}并把剩余的部分做为含有单词 分隔符的语句进行处理
10
语法:参数展开
¾ eval file delete [glob *.o] ¾ set vars {a b c d} eval unset $vars ¾ eval set a 2 ; set b 4
15
变量:查询数组
¾ 对一个数组变量,array可以查询其元素个 数和元素名列表 ¾ set a(1) 100 ¾ set a(2) 200 ¾ set a(3) 300 ¾ array size a →3 ¾ array names a →1 2 3
16
变量:incr和append
¾ incr 加
→1
31
正则表达式
¾ regexp 匹配
¾regexp {^[0-9]+$} 510 →1
¾ regsub 替换
¾regsub there “They live there lives” their x →1
X的值被设置为They live their lives, 语句返回值是1
32
正则表达式:regexp
¾ 也可以使用array unset 移除数组中元素

Python 介绍

Python 介绍

Python 介绍Python(KK 英语发音:/'paɪθɑn/, DJ 英语发音:/ˈpaiθən/)是一种面向对象、直译式计算机程序设计语言,创始人为Guido van Rossum。

这种语言的语法简捷而清晰,并且具有丰富和强大的类库。

python常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。

常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,速度要求非常高,就可以用C++重写。

产生Python的创始人为Guido van Rossum。

1989年圣诞节期间,在阿姆斯特丹,Guido 为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。

之所以选中Python(大蟒蛇的意思)作为程序的名字,是因为他是一个Monty Python的飞行马戏团的爱好者。

ABC是由Guido参加设计的一种教学语言。

就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。

但是ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。

Guido 决心在Python 中避免这一错误。

同时,他还想实现在ABC 中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。

实际上,第一个实现是在Mac机上。

可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。

并且结合了Unix shell和C的习惯。

执行Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine来执行这些编译好的byte code。

这种机制的基本思想跟Java,.NET是一致的。

tcltk编程及应用简介

tcltk编程及应用简介
Quick and easy to build powerful user interfaces. Portable , one copy of script can work unchanged on UNIX,
Windows, and the Macintosh.
Product Test – Shanghai / April 2010
tcltk编程及应用简介
Product Test – Shanghai / April 2010
All rights reserved © 2010, Alcatel Shanghai Bell
Tcl/Tk Around Us
Product Test – Shanghai / April 2010
<Command> [var1 [var2 […]]]
Product Test – Shanghai / April 2010
All rights reserved © 2010, Alcatel Shanghai Bell
Variable
➢Needn’t declare the type of variable, automatic conversion in context
All rights reserved © 2010, Alcatel Shanghai Bell
From WorkPlace
➢In WCS

➢In ITE/8610
Using Expect to communicate with WCS : send CLI commands and get response.
All rights reserved © 2010, Alcatel Shanghai Bell
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Advanced Programming Spring 2002
3
Tcl/Tk features
high-level scripting language
less code than Motif or Win32
most platforms
Unix, Mac, Windows hides UI, system call differences
interpreted
execute directly, without compiling or linking
autoloading
automatically load libraries
extensible
commands in Tcl or C
embeddable
3-Aug-13
Advanced Programming Spring 2002
14
Tcl – more details
# comment one line at a time – use \ for continuation "Tcl parses a command and makes
$ tclsh % set x 7 7
2. wish for window programs
$ wish % button .b –text “Hello” –command exit % pack .b
3-Aug-13 Advanced Programming Spring 2002 5
Using Tcl/Tk
3-Aug-13
Advanced Programming Spring 2002
7
Tcl language structure
Everything is a list of words – no fixed grammar
first word is command
{} delay evaluation, may nest "" only needed when spaces:
3-Aug-13 Advanced Programming Spring 2itutions
Replacement like shell Substitutions:
variable substitution: set a 17 command substitution, evaluated as separate script: set b [expr $a*4] backslash substitution: set x \$a
Tcl/Tk
Henning Schulzrinne Dept. of Computer Science Columbia University
3-Aug-13 Advanced Programming Spring 2002
Tcl/Tk
C functions can become Tcl commands that are invoked interactively (cf. Unix executables shell commands) Tk = scriptable, portable user interface
3-Aug-13
Advanced Programming Spring 2002
11
Tcl binding example
#!/usr/bin/env wish -f source power.tcl entry .base -width 6 -relief sunken -textvariable base label .label1 -text "to the power" entry .power -width 6 -relief sunken -textvariable power label .label2 -text "is" label .result -textvariable result pack .base .label1 .power .label2 .result -side left \ -padx 1m -pady 2m bind .base <Return> {set result [power $base $power]; puts $result} bind .power <Return> {set result [power $base $power]}
substitutions in a single pass from left to right. Each character is scanned exactly once. At most a single layer of substitution occurs for each character; the result of one substitution is not scanned for further substitutions."
set earnings(February) 4827 set earnings($year,$month) 148
array manipulates arrays:
array names earnings January February ... array size earnings 12
evaluates numerically where possible
3-Aug-13
Advanced Programming Spring 2002
18
Tcl lists
list = ordered collection of elements separated by spaces or tabs any proper list can also be a Tcl command! concat list list – concatenate lists
From C program:
#include <tcl.h> main(int argc, char *argv[]) { Tcl_interp *interp = Tcl_CreateInterp(); code = Tcl_EvalFile(interp, argv[1]); if (*interp->result != 0) { printf(“%s\n”, interp->result); } }
Tcl history
Developed in late 1980s by John Ousterhout first release ~1991 Tk usable around 1992 see /doc/tclHistory.html
3-Aug-13
3-Aug-13
Advanced Programming Spring 2002
12
Tcl bindings
widgets: labels, entries, buttons, ... -textvariable associates variable with display pack arranges the widgets into side-byside, with spacing bind widget event Tcl-script, e.g.,
3-Aug-13
Advanced Programming Spring 2002
17
Expressions
Usually need 'expr' command to evaluate, except in condition for if, while, ...
if {$x == $y} { ...} set x [expr {$x + 7}] set y [expr {log($y}]
3-Aug-13
Advanced Programming Spring 2002
16
Variables
incr increments variable append adds strings to end: append msg "more text" argv variable is list of command line arguments env is list of environment variables
invoked as, say, power 2 6
3-Aug-13 Advanced Programming Spring 2002 10
Tcl event bindings
binding: execute script whenever an event occurs (cf. handlers) e.g., -command more sophisticated: bind
3-Aug-13
Advanced Programming Spring 2002
9
Tcl procedures
procedures can be created dynamically
proc power {base p} { set result 1 while {$p > 0} { set result [expr $result * $base] set p [expr $p-1] } return $result }
Tcl interpreter callable from C
3-Aug-13
free
source no royalties
4
Advanced Programming Spring 2002
Using Tcl/Tk
相关文档
最新文档