赶路人的星光 2021-03-23 20:52 采纳率: 0%
浏览 82

Qt多线程问题:能通过主线程的按钮触发,启动另一个线程run()中的音效吗?

上图是主线程UI界面的按钮和其槽函数,槽函数里面触发一个信号,该信号和另一个线程的槽函数(如下图)connect

我想通过这个按钮去启动另一个线程run()里面的QSound,使其播放音效(如下图)

但结果是音效没有响。

但经过我如下图的测试后,运行程序是会直接播放音效的,我灵机一想,是不是因为启动程序后的延时使QSound的play()无法执行了,我后来又在下图的play()前面加上来sleep(100)函数,结果正如我想的那样,音效又无法播放了

想请教一下大家,我这个猜想是不是对的?还有就是如何解决这个问题:使其能够通过按钮播放另一个线程的音效?

 

ps.我后来将这个按钮判断放到了另一线程里的槽函数,结果是能正常播放,但run()里面就空了。开单独线程的意义就没了,所以我很纠结

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-07 17:41
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
  • ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
  • ¥15 LLM accuracy检测
  • ¥15 pycharm添加远程解释器报错
  • ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口
  • ¥15 如何能达到用ping0.cc检测成这样?如图
  • ¥15 关于#DMA固件#的问题,请各位专家解答!
  • ¥15 请问华为OD岗位的内部职业发展通道都有哪些,以及各个级别晋升的要求
  • ¥20 微信小程序 canvas 问题
  • ¥15 系统 24h2 专业工作站版,浏览文件夹的图库,视频,图片之类的怎样删除?