14.8. Tcl/Tk - 廣為運用的一種高階電腦語言與 GUI 發展工具

tcl 是一個高階的電腦語言,語法類似 shell script 與 C 語言之間。而 tk 是一個使用者界面發展工具,有 buttons、menus、listboxes、 scrollbars 等等。

把這兩者結合起來,就形成了強有力的 GUI 發展套件。最新版本的 tcl/tk 支援了多平台的開發程式庫。所以我們可以寫一個 tcl/tk 的程式(也稱為script),然後在 UNIX 下看起來就像是 Motif 的應用程式;在 Windows9x/NT 下看起來像是 Win32 的應用程式;而在 Macintosh 下看起來像 Mac 的應用程式。

tcl/tk 的優點第一是 free(自由)。 第二是容易學習,您不須具備 object-oriented 或 threads 或 Microsoft Fundation Classes 的基礎,也不須寫一大串的程式碼。 像是傳統的 Hello, World! 程式,在 tcl/tk 只要兩行就搞定,

button .b -text "Hello, World!" -command exit
pack .b

第三是有許多的 extensions(延伸套件)可以支援其他軟體程式庫, 例如 Oracle, Sybase, Informix, OpenGL 等多達 400 種。

安裝 chinese/tcl83chinese/tk83

chinese/tcl83 和 chinese/tk83 主要是補上一個 --enable-i18nImprove 的選項, 修正 XIM 處理有問題的部份。

中文顯示都正常,中文輸入也是正常的。

#!/usr/local/bin/wish8.3
tk useinputmethods 1
font create bsmilpfont -family "ar pl mingti2l big5" -size 16
label .a -text "標籤" -font bsmilpfont
pack .a
button .b -text "按鈕" -command { puts stdout $cc; exit } -font bsmilpfont
pack .b
entry .c -textvariable cc -font bsmilpfont
pack .c

Note: after tcl 8.1, it add i18n support, you may change unix/tclUnixInit.c.

{"zh_CN", "euc-cn"}, 
{"zh_CN.gbk", "euc-cn"}, 
{"zh_CN.gb2312", "euc-cn"},

Figure 14-3. tcltk snapshot

WWW: http://www.scriptics.com/software/tcltk/8.3.html