在Python/tkinter中,有没有方法可以访问通过变量名引用的子元素,而不是从另一个函数访问它们?在
例如,在VBA中,可以通过名称直接引用另一个窗口的元素。
例如,如果我有两个窗口,UserForm1
和UserForm2
我可以通过单击UserForm1
上的按钮来更改Label1
的文本值。在
Private Sub CommandButton1_Click()
UserForm2.Label1.Caption = "Changed"
End Sub
在tkinter中,我找到了访问子元素的winfo_children()
。有没有办法通过他们的名字找到他们?在
请参阅下面的示例代码:
^{pr2}$
winfo_children()
返回与小部件类型相关联的class
实例以及tkinter分配给实际tk对象的名称。在这意味着是的,我们可以引用widget的名称,尽管我不确定除了不需要将标签赋给变量之外,这会给您带来什么好处。在
上述操作将导致窗口中出现两个
Label
小部件和一个Button
小部件。第一个Label
没有存储在变量中,但是我们可以很高兴地在print语句中调用它。第二个存储在一个变量中,但是您可以看到在Button
的command
中,我们引用的不是这个变量,而是Label
的name属性。在Bryan Oakley has a fantastic answer here explaining this.
我不太清楚你说的“名字”是什么意思:
您可以简单地通过对象引用访问小部件:
或者,如果要用更多面向对象的方法定义它们,可以使用
^{pr2}$.
(点)表示法:相关问题 更多 >
编程相关推荐