当前位置:编程学习 > wap >>

Qt 背景透明问题

哥们 最近在Qt中显示视频,遇到点问题

目的是想实现一个区域截取的功能,在widget上面显示了一个透明的widget 用于实现截取功能,可是上层widget一旦显示,下层的视频就刷不上来了,试了Qt的各种属性,未果,哪位大哥遇到类似问题 指点一下
图一为没有显示截取widget时的图片

图二为显示了截取widget的图片
Qt 视频 --------------------编程问答-------------------- 这样行不行,截图时,先上层窗口隐藏,然后再QTimer::singleShot(10,this,SLOT(...)) ;  //过10毫秒后再截图 --------------------编程问答-------------------- 还有你的视频View是QGraphicsView派生的么,如果是,在你鼠标划过期间是不是调用QGraphicsScene::advance () 来强制刷新会好一些 --------------------编程问答--------------------
引用 1 楼 lkldiy 的回复:
这样行不行,截图时,先上层窗口隐藏,然后再QTimer::singleShot(10,this,SLOT(...)) ;  //过10毫秒后再截图

这个是我想要的效果,不是当当是要截图,主要是还想在上面有个画笔
--------------------编程问答--------------------
引用 2 楼 lkldiy 的回复:
还有你的视频View是QGraphicsView派生的么,如果是,在你鼠标划过期间是不是调用QGraphicsScene::advance () 来强制刷新会好一些

上面覆盖了一层,下层的widget 是收不到任何事件的,这里没有用GraphicsWidget体系,就是普通的widget --------------------编程问答-------------------- 请问楼主,qt显示视频是不是速度比较慢啊 --------------------编程问答--------------------
引用 5 楼 zhouqin1508 的回复:
请问楼主,qt显示视频是不是速度比较慢啊

显示视频时DX在下层绘制,Qt只是传递一个Widget句柄下去,基本和Qt没有多大关系 --------------------编程问答-------------------- 哪位大哥有好点的意见啊 --------------------编程问答-------------------- 一般截图时 显示是“冻结的”

即先来个全屏截图

然后显示这张全屏的图,在这张图上再选区域,画笔搞些动作什么的


--------------------编程问答--------------------
引用 8 楼 skertone 的回复:
一般截图时 显示是“冻结的”

即先来个全屏截图

然后显示这张全屏的图,在这张图上再选区域,画笔搞些动作什么的


恩 其实冻结的挺简单的,截张图画就行,主要现在是 视频需要持续播,然后 上层可以选择区域 画图形 --------------------编程问答--------------------
引用 8 楼 skertone 的回复:
一般截图时 显示是“冻结的”

即先来个全屏截图

然后显示这张全屏的图,在这张图上再选区域,画笔搞些动作什么的


正解,截图前,先保存当前窗口图像,然后放到一个全屏窗口,再从上边截图 --------------------编程问答--------------------
引用 10 楼 yanbin_1985525 的回复:
引用 8 楼 skertone 的回复:一般截图时 显示是“冻结的”

即先来个全屏截图

然后显示这张全屏的图,在这张图上再选区域,画笔搞些动作什么的

正解,截图前,先保存当前窗口图像,然后放到一个全屏窗口,再从上边截图


偏了,我不是要截图 --------------------编程问答-------------------- 楼主用的QMovie显示视频么,还是在窗口里一幅一幅的draw每一帧图片? --------------------编程问答--------------------
引用 12 楼 lkldiy 的回复:
楼主用的QMovie显示视频么,还是在窗口里一幅一幅的draw每一帧图片?

呵呵 都不是 --------------------编程问答-------------------- 直接调用了别的显示模块?貌似有点难搞啊... --------------------编程问答--------------------
引用 14 楼 lkldiy 的回复:
直接调用了别的显示模块?貌似有点难搞啊...

有专门处理视频的库,做这一块的 --------------------编程问答-------------------- 自己 up 一下 --------------------编程问答-------------------- 不是载图的话可能是另两种玩法,楼主不说清楚

1.叠加字幕或操作图标
2.屏幕录像

第2种不会

第1种可以用个Qt异型窗口叠在上面

也就是这个窗口只有一个边框其它部分镂空

在Qt中窗口可以做个png图片就实现了 --------------------编程问答-------------------- 呵呵,参照qwt,类似
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,