Tx.Yang
2019-04-07 20:25
采纳率: 66.7%
浏览 492

如何基于C++运行并实时传参给一个PyQt窗口?

我有一个基于PyQt的python脚本,希望利用Python提供的API在C++来运行它。
这个脚本里是一个在QApplication里的QMainWindow,由于不能打断QApplication,我把它放在python的子线程里,通过调用python主线程中函数来发送signal给slot传参。



我的问题是:由于python主进程一缺少命令运行就不会激活,而子进程中的窗口也会处在无响应的状态,我现在只能在主进程中使用sleep保持python依然运行,C++只能等待睡眠结束后再发送信息给窗口。,这样又会引起窗口的延迟。

有没有什么办法避免使用sleep,实时控制这样的PyQt主窗口,又不影响他的运行?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • threenewbee 2019-04-07 23:55
    已采纳

    鉴于你是三零(0采纳,0悬赏,0声望)用户,就简单说下吧。

    不要在主线程里面调用sleep去阻塞,可以用定时器来延迟,或者在工作线程里面sleep。
    这样通讯的时候用sendmessage发消息,就能收了。

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题