Consider:
puts [tk_chooseDirectory]
if run in a directory (e.g., called parent), containing a sub-directory (e.g., called child), and the user selects the sub-directory and then hits Okay, the name of the parent directory is printed, not that of the selected child. In earlier versions of Tk (e.g., 8.4.13), the name of the selected sub-directory would be returned. This change in behaviour is very confusing.
What platform?
Platform: i686 GNU/Linux (Redhat Enterprise 5)
It seems this is another issue caused by ttk::button's focus behaviour.
See http://wiki.tcl.tk/20050.
The following is a workaround:
bind TButton <1> {%W instate !disabled {%W state pressed}}