1年以上遅れましたが、これが求められていることだと思います:
import tkinter as tk
class GetWidgetAttributes:
@staticmethod
def get_attributes(widget):
widg = widget
keys = widg.keys()
for key in keys:
print("Attribute: {:<20}".format(key), end=' ')
value = widg[key]
vtype = type(value)
print('Type: {:<30} Value: {}'.format(str(vtype), value))
if __name__ == '__main__':
gw = GetWidgetAttributes()
# For Example, find all attributes of Tkinter Frame
gw.get_attributes(tk.Frame())
結果は次のとおりです。
Attribute: bd Type: <class 'int'> Value: 0
Attribute: borderwidth Type: <class 'int'> Value: 0
Attribute: class Type: <class 'str'> Value: Frame
Attribute: relief Type: <class 'str'> Value: flat
Attribute: background Type: <class 'str'> Value: SystemButtonFace
Attribute: bg Type: <class 'str'> Value: SystemButtonFace
Attribute: colormap Type: <class 'str'> Value:
Attribute: container Type: <class 'int'> Value: 0
Attribute: cursor Type: <class 'str'> Value:
Attribute: height Type: <class 'int'> Value: 0
Attribute: highlightbackground Type: <class 'str'> Value: SystemButtonFace
Attribute: highlightcolor Type: <class 'str'> Value: SystemWindowFrame
Attribute: highlightthickness Type: <class 'int'> Value: 0
Attribute: padx Type: <class '_tkinter.Tcl_Obj'> Value: 0
Attribute: pady Type: <class '_tkinter.Tcl_Obj'> Value: 0
Attribute: takefocus Type: <class 'str'> Value: 0
Attribute: visual Type: <class 'str'> Value:
Attribute: width Type: <class 'int'> Value: 0
Larz60p