QT
孤骑清寒
这个作者很懒,什么都没留下…
展开
-
VLC+Qt播放器对比测试
开发环境:VS2017 + Qt5.12.5 + Vlc3.0事先说明为什么做这个东西。各个播放器都有各自的优缺点。LibVlc太大,启动慢,对于播放一些短小的特效音视频不太好用,而且进度反馈也不太准确;QMediaPlayer属于Qt自带,但它用的是系统自带的解码器,因此支持的格式有限,但因为它是Qt自带的,它启动快,对一些小音频支持不错,而且更加灵活,但实时性依旧不佳。如果想要更好的实时性,则需要使用FFmpeg+QAudiooutput来实现预解码和实时音频输出。注意事项在Qt中如果对.原创 2021-05-10 10:00:31 · 664 阅读 · 0 评论 -
QT绘图实现橡皮擦效果
思路分析基本上所有绘图软件都有橡皮擦功能。而我最近在做的和其他的软件又不太相同,类似于实际生活中的橡皮擦,即擦掉笔画中的部分内容而不动背景图。网上的实现思路也有很多。但没有找到合适的。...原创 2020-08-29 14:54:11 · 3644 阅读 · 2 评论 -
QT 使用全局缩放进行全分辨率适配(QT_SCALE_FACTOR)
事出有因因为现在做的一个项目是全程全屏显示的。因此不同屏幕分辨率对程序界面的影响太大。而UI设计的时候又没有过多的考虑自动布局这方面的事。虽然在刚开始做界面的时候已经尽量利用自动布局来做,但是有些控件提供的图片大小不太合适,在做的时候只能给控件设置固定大小。在测试不同分辨率的时候发现界面展现的效果不同。于是就开始想办法做分辨率适配。偶然事件具体忘记当时在搜索什么东西了,大概应该是高分屏适配的问题。在qt的一篇官方文档中发现了这个好东西:QT_SCALE_FACTOR [numeric] defi原创 2020-07-21 15:54:52 · 26786 阅读 · 20 评论 -
QT保持窗口宽高比
需求由于窗口功能特殊,需要保持窗口的宽高比不变。即在调整宽度的时候同时自动调整宽度,同理在调整宽度的时候同时自动调整高度。资料收集resizeEvent()在QWidget中当窗口大小改变之后会触发resizeEvent事件。setHeightForWidth()非顶级窗口可用,设置此属性后,在窗口的宽度发生更改之后会自动调用heightForWidth函数来获取新的高度。WM_S...原创 2020-05-28 15:02:53 · 6231 阅读 · 3 评论 -
MuseScore通过快捷键添加的低八度符号显示异常
bug描述当使用快捷键向乐谱中添加低八度(8vb)符号时,添加的符号显示结果为高八度符号。BUG定位调试找到,通过快捷键添加低八度符号时。依次通过一下接口。ScoreView::cmd("add-8vb"); (scoreview.cpp,1980行)Score::cmd(const QAction* a, EditData& ed); (cmd.cpp,360行)Scor...原创 2020-04-15 09:16:08 · 2250 阅读 · 0 评论 -
Qt高分屏适配和QSS单位
介绍QT程序如何自动适配高分屏的系统自动缩放设置。以及QSS中的各个单位。原创 2020-04-13 21:50:11 · 3255 阅读 · 2 评论 -
ffmpeg解码内存中的数据
本文参考自:ffmpeg 从内存中读取数据(原创:雷霄骅)需求最近做一个项目需要播放一些简单的音频,而这些音频以二进制的形式存储在数据库中。而且需要保证音频的音频播放的实时性。故研究下如何从内存数据中解码音频。开发原帖中给的代码已经十分详细了。不过有几个需要注意的点原帖中并未提及。回调函数filliobuffer中的第一个参数int fillIiobuffer(void * opa...原创 2020-03-23 16:37:56 · 1063 阅读 · 0 评论 -
QT窗口属性Qt::Window
实现效果当窗口基类是QWidget时,如果为其设置父窗口,窗口会以子窗口的形式出现在父窗口中,这时窗口没有标题栏关闭按钮等。如果想使子窗口与父窗口绑定,而且子窗口以独立窗口的形式存在,则需要设置子窗口属性为Qt::Window。代码如下: XElementPanel::XElementPanel(QWidget *parent) : QWidget(parent) { ui.se...原创 2020-03-18 16:15:54 · 2728 阅读 · 0 评论