使用QT做播放器使用widget::winid可以获取播放器组件的windows句柄并以命令行的方式调起另一个程序使用D3D将内存缓冲区的图像打在上面。但是在做全屏是出现了问题,如果让播放器组件自己独立全屏就使用代码:

MainWindow::MainWindow(QWidget *parent) { _previewInitParent = ui->preview->parentWidget(); _previewInitPoit = ui->preview->pos(); _previewInitSize = ui->preview->size(); } void MainWindow::toggleFullscreen(){ if (ui->preview->isFullScreen() || ui->preview->parentWidget() == NULL) { ui->preview->setParent(_previewInitParent);// ui->preview->resize(_previewInitSize); ui->preview->move(_previewInitPoit); ui->preview->show();///<改变parent之后要show } else { ui->preview->setParent(NULL); ui->preview->showFullScreen(); } }

但是,这样出现的问题就是切换到全屏,或者是全屏切回组件,这个播放器窗口/组件(widget)的winid发生了改变,上面就不会再显示视频了。

搜索解决禁止winid改变的方法未果,我就换了一种方式做全屏,将整个主窗口全屏,然后让播放器扩大到整个窗口中,采用代码:

void MainWindow::toggleFullscreen() { if (this->isFullScreen()) { this->showNormal(); ui->preview->resize(_previewInitSize); ui->preview->move(_previewInitPoit); this->statusBar()->show(); } else { this->showFullScreen(); ui->preview->resize(this->size()); ui->preview->move(0, 0); this->statusBar()->hide(); } }

有谁能解决winid不改变时切换组件的全屏,请告之……

转载于:https://www.cnblogs.com/k1988/archive/2011/03/03/2165607.html

QT制作全屏播放器以及出现的问题相关推荐

  1. FFmpeg —— Win10下使用Qt制作多功能播放器

    Win10下使用Qt制作多功能播放器 视频地址     Win10下使用Qt制作多功能播放器       ...int result = avformat_open_input(&avForm ...

  2. QT——制作简易音频播放器

    应用前提:只需要从阿里云数据库中读取选定的某一条实验数据的音频(.wav),现在的测试版本只是播放本地音频,所以做的这个音频播放器只有6个功能:播放.暂停.音量条.静音.进度条.显示当前播放进度的时间 ...

  3. QT制作一个图片播放器

    前言:使用qt制作了一个简单的图片播放器,可以播放gif.png等格式图片 先来看看播放器的功能(当然是很简陋的,没有很深入的设计): 1.点击图片列表中图片进行播放. 2.自动播放,播放的图片的间隔 ...

  4. 【C++】QT制作简单音乐播放器

    QT音乐播放器Mymusic 整体布局 写ui文件: Headers Sources 整体布局 创建QT项目,使用Qt5.9版本 分为三栏,最上面放标题和图标,中间放播放的列表,最下面放控制按钮. 引 ...

  5. Flowplayer播放器flash全屏播放器带播放按钮

    Flowplayer 是一个开源(GPL 3的)WEB视频播放器.您可以将该播放器嵌入您的网页中,如果您是开发人员,您还可以自由定制和配置播放器相关参数以达到您要的播放效果.本文主要介绍Flowpla ...

  6. html全屏播放器代码,Bilibili HTML5播放器网页全屏模式优化 脚本版

    // ==UserScript== // @name Bilibili HTML5播放器网页全屏模式优化 脚本版 // @namespace http://tampermonkey.net/ // @ ...

  7. Chromium为视频标签 video 全屏播放的过程分析

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在Chr ...

  8. Chromium为视频标签video全屏播放的过程分析

    在Chromium中,<video>标签有全屏和非全屏两种播放模式.在非全屏模式下,<video>标签播放的视频嵌入在网页中显示,也就是视频画面作为网页的一部分显示.在全屏模式 ...

  9. Qt图片定时滚动播放器+透明过渡动画

    目录 参考 结构 PicturePlay.pro main.cpp myqlabel.h 自定义QLabel myqlabel.cpp自定义QLabel pictureplay.h picturepl ...

最新文章

  1. java {@link},Javadoc @see或{@link}?
  2. 简明python教程购买-简明python教程哪版(python看什么书)
  3. mysql的字符串处理函数
  4. GPTEE中定义的RSA的Algorithm Identifier详解
  5. SQL注入是什么?如何防止?
  6. netty系列之:对聊天进行加密
  7. Vue项目目录结构注解附assets与static目录的区别
  8. 解决:springcloud eureka 注册的服务config-client 状态Status:UNKNOWN (1)
  9. 行业观察:拐点已至!抛弃传统数据库,乘云而上!
  10. python坐标定位_python实现获取屏幕坐标位置值+VBS模拟鼠标操作
  11. PMP考试只刷题能否通过呢?
  12. 平方项知多少?平方项、分组回归与门槛模型
  13. pcb 受潮_PCB受潮影响性能有什么好的处理方法?
  14. Java实现——求指定年份的父亲节(母亲节)是几月几号
  15. VBA 中Dim含义
  16. (附源码)pringboot餐饮点餐系统 毕业设计301749
  17. 大学必须掌握的软件基础课程
  18. 初识CMake,如何编写一个CMake工程(上)
  19. python:实现Triplets with zero sum零和三元组(附完整源码)
  20. PS4计算机模块试题,越玩越留恋的PS4独占大作,馋坏了PC玩家,纷纷加入主机行列...

热门文章

  1. java jframe 对话框_java-如何将值从JDialog框返回到父JFrame?
  2. MAVEN创建项目后缺少文件夹
  3. VB APP对象属性一览表 + 灵活使用VB的APP对象
  4. VB在菜单上增加图标
  5. 想快速了解AI各领域的前沿研究成果?可以来这个网站看看 | 资源
  6. 北京公交将标配智能辅助驾驶,具备行人防撞、车道偏离预警
  7. 长途货运4大痛,Uber新上的「自动驾驶卡车」如何改善?
  8. DeepMind提出训练网络新方法,快速找到最佳超参数和模型
  9. django文件——django + jquery-file-upload上传篇(二)-- 插件实现文件上传+进度条显示 +拖入文件上传...
  10. Angular4的QuickStart—— ES6 而非TypeScript