Tcl/TK Секундомер Трекер времени

Я работаю над программой отслеживания задач для своей работы. Он модифицирован из секундомера.

Его основная функция заключается в визуальном отслеживании времени, которое занимает каждая задача, записи его в текстовый файл и обнулении часов. Вот скриншот программы в том виде, в котором она находится сейчас.

Кнопки и метки размещаются с помощью сетки следующим образом:

grid .laplabel .laptime .laprecord .lapzero
grid configure .laplabel      -sticky e
grid configure .laptime       -sticky ns
grid .lap2label .lap2time .lap2record .lap2zero
grid configure .lap2label      -sticky e
grid configure .lap2time       -sticky ns
grid .lap3label .lap3time .lap3record .lap3zero

так далее...

Каждое нажатие кнопки записи вызывает .laprecord и .lapzero следующим образом:

button .laprecord -text "record" -command {
    record L TEST$time(lap)
set time(lap) [timeformat 0]
set time(lstart) [now]
}
proc lapzr {} {
    .laprecord invoke
    .lapzero invoke
}


Таким образом, графический интерфейс становится громоздким даже при наличии двенадцати элементов, и мне нужно добавить еще примерно пятнадцать. Я предполагаю, что все записи, которые теперь расположены с использованием сетки, будут вместо этого расположены в одном раскрывающемся меню.

Любые советы о том, как это сделать, будут высоко оценены.


person user686566    schedule 17.10.2011    source источник


Ответы (1)


Попробуйте использовать tktable. Похоже, что он предназначен для такого рода табличных данных, и IIRC может быть привязан к массиву, поэтому вставка большего количества строк должна быть простой.

person Donal Fellows    schedule 17.10.2011