How to set kivy widget id from Python code file(如何从 Python 代码文件中设置 kivy 小部件 id)
问题描述
我需要帮助将 id 分配给从 python 函数创建的新 kivy 小部件
I need help assigning ids to new kivy widgets that are created from a python function
我试过了:
old = Label(id = 'old')
和:
old = Label()
old.id = 'old'
但它似乎不起作用,因为每当我尝试引用小部件时,它都会给我一个错误
but it doesn't seem to work because, whenever i try referencing the widgets, it gives me an error
推荐答案
您在 Python 代码中创建 id
的方式是正确的.
The ways that you have creating id
in Python code are correct.
但是您不能使用 self.ids.old
或 self.ids['old']
来引用它们,因为它们在 self.ids 中不存在代码>.
self.ids
字典类型属性仅包含所有带有在 kv 文件中定义的 id 标记的小部件.
But you cannot reference them using self.ids.old
or self.ids['old']
because they don't exist in self.ids
. The self.ids
dictionary type property contains only all widgets tagged with ids defined inside kv file.
要引用 Python 代码中定义的 id
,在本例中使用 self.old
.
To reference id
defined in Python code, in this example use self.old
.
在你的 python 代码中访问 Kv lang 中定义的小部件
当您的 kv 文件被解析时,kivy 会收集所有标记为的小部件id 并将它们放在这个 self.ids
字典类型属性中.那意味着您还可以遍历这些小部件并访问它们字典样式.
When your kv file is parsed, kivy collects all the widgets tagged with id’s and places them in this
self.ids
dictionary type property. That means you can also iterate over these widgets and access them dictionary style.
这篇关于如何从 Python 代码文件中设置 kivy 小部件 id的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何从 Python 代码文件中设置 kivy 小部件 id


基础教程推荐
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 筛选NumPy数组 2022-01-01