How to debug an unfired tkinter event?

jfong at ms4.hinet.net jfong at ms4.hinet.net
Sat Oct 21 13:25:08 EDT 2017


Terry Reedy at 2017-10-20 UTC+8 AM 7:37:59 wrote:
> On 10/19/2017 5:07 AM, jfong at ms4.hinet.net wrote:
> 
> > I got some info below each time when I squeeze the table:
> > .
> > .50077776
> > .50077776.50712528
> > .50077776.50712496
> > .50077776.50712464
> > .50077776.50712144
> > .50077776.50712528.50712560.50782256
> > .50077776.50712528.50712560.50782256.50783024
> > .50077776.50712528.50712560.50782256
> > .50077776.50712528.50712560.50782256.50783024
> > 
> > How to change these number(is it a widget ID?) to a meaning name?
> 
> The number strings as names are the defaults that came from tkinter, not 
> tcl/tk.  In 3.6, the default names were changed to be versions of the 
> class name.
> 
>  >>> import tkinter as tk
>  >>> r = tk.Tk()
>  >>> b = tk.Button(r)
>  >>> b
> <tkinter.Button object .!button>
>  >>> b2 = tk.Button(r)
>  >>> b2
> <tkinter.Button object .!button2>
> 
I have a question about this change. When there are multiple buttons in the same widget hierarchy level and a ".xxx.yyy.!button2" showing up, how to figure out which button it means?

By the way, where is the document of this change? Now it doesn't fit the description in the "tkinter 8.5 reference manual" anymore.

--Jach



More information about the Python-list mailing list