验证TK/Tcl中的条目

验证TK/Tcl中的条目,tcl,tk,Tcl,Tk,我正在尝试验证条目的文本输入 entry $w.e -validate key -vcmd "entryChanged $w.l $w.e" 我定义了以下回调 proc entryChanged {l e} { puts [$e get] return 1 } 问题是get返回条目的前一个值,因为新值直到验证之后才设置。我的问题是如何访问新值?(待验证的值)我相信它与-textvariable有关,但是,我找不到太多关于这方面的文档。您需要仔细阅读。例如,试试这个 ... -

我正在尝试验证条目的文本输入

entry $w.e -validate key -vcmd "entryChanged $w.l $w.e"
我定义了以下回调

proc entryChanged {l e} {
    puts [$e get]
    return 1
}

问题是get返回条目的前一个值,因为新值直到验证之后才设置。我的问题是如何访问新值?(待验证的值)我相信它与
-textvariable
有关,但是,我找不到太多关于这方面的文档。

您需要仔细阅读。例如,试试这个

... -vcmd {entryChanged  %W %s %P}

proc entryChanged {widget_name old_value new_value} {
    puts "widget name = $widget_name"
    puts "previous value = $old_value"
    puts "edited value = $new_value"
    return true
}