【发布时间】:2023-01-01 03:57:43
【问题描述】:
在我的项目中,我动态地(通过代码)创建LineEdits,其中包含用户可以在弹出窗口WindowDialogue 中更改的字段。以类似的方式,我将每个带有信号 (text_entered) 的 LineEdit 连接到一个保存所做更改的函数。
所以,我有一个简单的功能,它管理 WindowDialogue 关闭,即删除所有孩子:
for child in parent.get_children():
if child.is_connected("text_entered", self, "_function_name"):
child.disconnect("text_entered", self, "_function_name")
child.queue_free()
如您所见,在从内存中删除子节点之前,我专门检查了子节点是否有要删除的连接。事实上,代码工作正常。但是,每次检查通过没有连接信号的节点(在我的例子中是Labels)时,我都会在调试器中收到此错误:
is_connected: Nonexistent signal: text_entered.
这是我无法反驳的引擎的逻辑陈述。我的问题是:有没有办法让我的支票通过而没有这个错误?
【问题讨论】: