Я пытаюсь создать диалоговое окно с индикатором выполнения, например, GNU / Linux Xdialog --gauge
По-видимому, вы должны получить значение, которое обновляется за одну секунду, извремя от времени.
Это приращение выполняется с помощью цикла for
, уже предварительно настроенного для последовательного подсчета.
Из моих тестов и того, насколько далеко я знаю tcl / tk может пойти так:
proc bar { pos } {
global txt
set txt $pos
}
set btn [button .btn -text "Play" -relief groove -command { bar $pos }]
scale .scl -length 200 -width 5 -orient horizontal -from 0 -to 100 -resolution 1 -variable value -sliderlength 5 -sliderrelief flat -activebackground blue -command { bar } -showvalue 0
label .lbl -textvariable txt -width 5
grid $btn -row 0 -column 0
grid .scl -row 0 -column 1
grid .lbl -row 0 -column 2
global value
for {set value 0} {$value < 10} {incr value} {
after 1000; # delay
if {$value < 10} { puts "Number: $value" }
bind . "$btn invoke"
}
Это работает, так что в консоли ... он не показывает форму, окно с медленно перемещаемым виджетом масштаба. Так что мне нужна помощь самого опытного, как я могу получить это?
Я создал многокадровую анимацию, чтобы получить лучшее представление. Смотрите: