如何获取窗口中的所有对象 - 使用其设置

时间:2016-01-09 22:17:31

标签: python tkinter

这个想法是获取所有按钮,标签,输入字段...给定窗口的树视图的信息。 使用此信息,可以关闭所有按钮或隐藏名称以“xx”开头的所有输入字段。可视化想法的最佳方式是树视图:

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

直到现在我才找到信息的最后部分

\window
     \Frame1
         \button1(Name,x,y ...)
         \button2(..)
      \Frame2

但如何对窗口的所有元素进行迭代? 我找不到类似的东西           typeof(按钮)== true ...           或typeof(object) - &gt;按钮......

1 个答案:

答案 0 :(得分:4)

您可以使用Constant获取所有作为widget.winfo_children()直接后代的小部件的列表。

给定对窗口小部件的引用,您可以调用widget来获取窗口小部件的所有可配置选项的列表。您可以使用widget.keys()方法获取值(例如:cget)。

您可以使用widget.cget("background")窗口小部件获取内部tkinter类型或窗口小部件类(例如:winfo_class)。