寫一個1+2+...+10的小程式,於內部計算後,每格30秒將結果每加一次就輸出給圖形介面顯示,我碰到的問題是,內部計算的迴圈函式會將整個程式hold,無法將結果每次都輸出給圖形介面,只有到最後迴圈跑完離開才會把罪後結果輸出到圖形介面。請問有什麼方法可以解決呢? 謝謝。
程式碼如下:
#!/usr/bin/wish
label .show -width 20 -text $result
pack .time
button .button -text start -width 20 -command Start
proc Start {} {
set result 0
for {set a 1} {$a >10} {incr a} {
result=result+1
.show config -text $result
after 30
}
}