抓住变速箱的变化 - rtcltk

时间:2011-06-28 17:23:18

标签: r tcl widget

我正在使用rtcltk创建一个旋转框,其中包含:

from <- tkwidget(leftFrame, type="spinbox", from=0, to=0.1, 
                         inc=0.001, textvariable=freqFrom,
                         command = function(){updatePlot()})

当我使用旋转框的箭头时,这可以按预期工作(updatePlot被调用),但如果我只是手动输入内容,则无效。

如何捕捉“价值已更改”事件?

1 个答案:

答案 0 :(得分:3)

默认情况下,如果您输入非法值(例如删除最后一位数字),或者如果更新耗时,则在此情况下不会更改,那么在输入时不希望它在每次击键之间更新3位或4位数字。

您可以添加更新按钮,而不是在单击时调用updatePlot,以便用户输入数字,当他们知道完成后会单击按钮。

如果您真的希望每次按键都能进行更新,那么您可以使用tkbind函数调用updatePlot(类似tkbind(*spinbox*, "<Key>", updatePlot),其中 spinbox 是指向spinbox的变量)。

相关问题