Tk Library Source Code

View Ticket
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.
Ticket UUID: cd399b24dbb91b47b0d080cbe8d9a74948c7cba3
Title: ttk::spinbox command is invoked without stop
Type: Bug Version: Tcl/Tk 8.6.4
Submitter: badchicken Created on: 2017-03-27 13:54:44
Subsystem: widget Assigned To: nobody
Priority: 5 Medium Severity: Important
Status: Open Last Modified: 2017-03-27 13:54:44
Resolution: None Closed By: nobody
    Closed on:

I have an strange behavior that it invokes the command without stop. I write the next code in the wish8.6 console:

 ttk::spinbox .sb -from 0 -to 10000 -command [list ::danitest]
 grid .sb
 proc ::danitest {} {
    puts "inside"
    tkwait variable ::danivar
    puts "outside"
Then, I do a single click on any arrow. The command is invoked and I can read the message "inside". Now, the process is waiting to the change of my variable danivar. In this momment, I write in the console the next code:
 set ::danivar 1

and when I press return I see that the message "outside" is shown, and some milliseconds later, the event is recalled (and I can read again the message "inside"). This behaviour doesn't stops.

I don't know if it is my fault or there is an error. I have the same behaviour if I use the command error instead of tkwait.