热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何创建触发器以启动数组中包含的类中的函数?

因此,我正在制作用于控制激光器的GUI,并且代码如下:foriinChannels:ui.Status_me

因此,我正在制作用于控制激光器的GUI,并且代码如下:

for i in Channels:
ui.Status_messagebox.append('Connect channel {}'.format(i.channel_id))
# [add something here so the code waits until I'm done connecting channel i]
i.FUN1

位置:


  • ui.Status_messagebox是QTextBrowser

  • 渠道是一个包含类类型项的数组(每个类都包含
    激光的通道ID和其他一些功能[FUN1 ... FUNk])

正如您在代码上看到的那样,我希望代码等待触发器启动功能FUN1

因为我不想使用time.sleep(30),所以我尝试了:

for i in Channels:
ui.Status_messagebox.append('Connect channel {}'.format(i.channel_id))
ui.OK.clicked.connect(i.FUN1)

其中ui.OK是一个QPushButton

它不起作用:单击ui.OK后,代码遍历所有通道并执行FUN1,而不允许我连接通道2,依此类推。

然后我尝试了这个:

for i in Channels:
ui.Status_messagebox.append('Connect channel {}'.format(i.channel_id))
ui.OK.setCheckable(True)
ui.OK.setChecked(False)
while True:
if ui.OK.isChecked()==False:
time.sleep(0.1)
else:
i.FUN1
ui.OK.setChecked(False)
break

在这里,Spyder只是被窃听了……并重新启动了内核。

注意:每当我放置与QPushButton相关的while循环时,Spyder似乎都不喜欢它,它只是重新启动了内核

所以,我的想法不多了,希望在这里找到帮助

非常感谢





推荐阅读
author-avatar
pacer猫处
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有