如何确保Qt小部件.重新油漆已完成运行
How to make sure Qt Widget.repaint has finished running?
我目前有Qt图形视图框架的问题,即,我想清除我的QGraphicScene背景颜色,然后运行一个函数来拍摄网络摄像头图片。到目前为止,当我使用QWidget。重新绘制屏幕只在大约1秒后重新绘制,此时相机功能已被调用,图像捕获总是关闭。下面是我的代码目前的样子。
//Scene is a QGraphicScene
//View is a QGraphicView
//Camera is a camera object
Scene.setBackgroundBrush(Qt::Blue)
View.repaint()
Camera.Capture()
我试过用另一个函数包装repaint()
调用,并使用信号和插槽调用,但它仍然失败。我想知道是否有办法暂停程序,直到屏幕刷新。
一个QGraphicsView
有一点比大多数QWidget
子类,我不熟悉它说什么是肯定会发生的,但我可能会冒险猜测,你的问题是有关的事实,场景实际上是渲染到视图端口小部件。也许调用viewport->repaint()
会给你你正在寻找的结果?
另外,除非你真的需要在这个场景中使用网络摄像头,你可以在你的场景中调用::render()
,并传递一个QImage
,你可以直接保存到一个文件
相关文章:
- C++一个线程如何正确通信其任务已完成?
- CLion、MinGW 和 SDL2:进程已完成,退出代码为 -1073741515 (0xC0000135)
- 如何延迟生成已完成的项目序列并对其进行迭代
- 从矢量中删除已完成的线程
- CLion 没有调试我的目标之一 - 立即"进程已完成,退出代码为 0"
- 使用YAML -CPP新API - 已修复的YAML文件解决
- 是否有任何标志指示 QT 主窗口渲染已完成
- 如何检查io_service中的任务是否已完成
- 如何确定哪个线程已完成
- OpenMP 是否将已完成部分的线程重用到另一个线程?
- WinAPI.检查窗口大小调整是否已完成
- 确定QProcess是否已完成执行或正在等待用户输入(或响应)
- 如果儿童进程崩溃,则QPROCESS ::已完成
- 检查QVariantAnimation是否已完成
- 在释放静态内存之前已完成卸载DLL
- 如何使我的程序检查安装是否已完成,然后"come back to life"
- Outlook IMAP已完成电子邮件和附件下载事件
- 通知调用方线程已完成
- 已完成线程使用的可用资源
- 如何确保Qt小部件.重新油漆已完成运行