2009-06-24

Tcl/TK 8.5 new syntax: {*} 與 Eval

Tcl/Tk 8.5 引進了新的語法 {*},可以用來動態的建立命令執行,可以讓程式看起來更為簡單(使用 eval 會看起來比較複雜)。

我們可以用 Eval 這個指令將參數串接成一個字串後,將字串視為一個 Tcl Script 丟給解譯器去執行。下面是使用 Eval 版:
eval button .b $stdargs -text \$mytext -bd $border

{*} 可以將可以將串列的各個值分開為不同的參數,下面是改寫過後的版本:
button .b {*}$stdargs -text $mytext -bd $border

沒有留言: