TCL/TK - действия с виджетами


#!/usr/bin/tclsh

package require Tk

wm title . "Test script"

ttk::labelframe .fr -padding "5 5 5 5" -text "test"
    ttk::label .fr.label1 -text "Param 1"
    ttk::label .fr.label2 -text "Param 2"
    ttk::entry .fr.var1
    ttk::entry .fr.var2
ttk::button .add -text "Sum" -command process

grid .fr -column 0 -row 0 -sticky nwes -padx 5 -pady 5
grid .add -column 0 -row 1 -sticky se -padx 5 -pady 10
grid columnconfigure . 0 -weight 1
grid rowconfigure . 1 -weight 1
grid .fr.label1 -column 0 -row 0 -sticky e
grid .fr.label2 -column 0 -row 1 -sticky e
grid .fr.var1 -column 1 -row 0 -sticky nwes
grid .fr.var2 -column 1 -row 1 -sticky nwes
grid columnconfigure .fr 0 -weight 0
grid columnconfigure .fr 1 -weight 1

# change attributes
.fr configure -text "New text"

proc process {} {
    tk_messageBox -message "Result= [expr [.fr.var1 get]+[.fr.var2 get]]"
}