自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (6)
  • 收藏
  • 关注

原创 Qt开发问题总结(1)

1、在使用QGraphicsView/Scene时需要将内存导出到pdf,有view.render和scene.render两种方式,在使用view.render时,注意item的cacheMode要设为QGraphicsItem::NoCache,否则pdf可能在多页的情况下文件很大、导出耗时。原因是次数每一个item是已图片方式绘制,且每一页pdf的内存都是全部内容。mac下的屏幕是以左下角为起点,y向上递增,x向右递增,qt的窗口坐标系是左上角未起点,向下递增。通过分析,实现两个坐标系互转。

2024-05-14 16:33:42 203

原创 win下qwidget全屏弹窗后其他窗口鼠标样式无法更新的问题

关键代码:SetWindowLongPtr((HWND)m_selectWidget->winId(), GWL_EXSTYLE, GetWindowLong((HWND)m_selectWidget->winId(), GWL_EXSTYLE) | WS_EX_TRANSPARENT | WS_EX_LAYERED);2、m_selectWidget绑定这个信号,在槽函数获取当前鼠标所在的qwidget,然后吧m_selectWidget自身的形状设置为此qwidget的形状即可。

2023-08-18 00:00:00 274

原创 Mac qt debug

为了更了解源码是实现过程,我们需要调试源码,qt默认的带的调试信息只有函数信息,无源码以及行号的信息,如何获取?第一的感觉是自己编译debug版本的qt,但这个编译对一个新手来说是比较折腾的。其实qt官方提供了各个版本debug的符号库,例如5.14.2的路径为:qt/online/qtsdkrepository/mac_x64/desktop/qt5_5142/qt.qt5.5142.debug_info.clang_64/qt地址:Index of /online/qtsdkrepository/m

2022-04-17 08:22:41 505 1

原创 Qt加载特大图片

QImage加载特大图片今天遇到一个问题,下载一个图片的大小是1w*1w的,直接用QImage加载返回为空,导致一系列的bug。解决方案初步是思路是:是否可以有一个办法是变读变缩放,达到我们预期的大小,因为太大加载显示意义不大。通过了解,目前可能无法一次性加载,否则内存吃不消。通过了解,出了qimage以外,qt提供了QImageReader的类,尝试查看了下QImageReader文档,发现setScaledSize接口,通过测试,成功的实现了缩放,但图片如果太大,可能比较耗时,可以开个线程去实现

2022-03-24 20:31:28 3377 7

原创 关于QtCreator编译的程序在Mac OSX(11) M1 上卡死

版本:Qt5.14.1目前在MAC M1用QtCreator编译运行程序,能正常编译,但点运行,一直显示不了页面,通过“活动监视器”查看,发现程序cpu 100%,一直纠结了好久。灵感:用xcode试试是否可以,发现竟然是可以的。通过分析xcode和qtcreator的编译参数,发现在SDK参数上有不一样。此时就要尝试修复qtcreator编译的参数,通过对qt安装目录文件的搜索,找到了对应的文件通过关键字“syslibroot”搜索这个qt目录打开将“-Wl

2021-07-04 10:42:22 1265 5

原创 预编译头文件(precompiled header)使用经验

预编译头文件是被很多编译器用来编译稳定的代码以及将编译好的稳定代码存储在二进制文件中用于提升编译性能。在随后的编译中,编译器将加载存储状态继续编译指定的文件。每一个随后的编译将更快,因为稳定的代码不需要再次编译。预编译头文件应该将稳定和静态(译者注:例如,Qt库头文件、第三方库头文件、自定义的不经常改动的头文件)的代码包含在你工程中详细可以(参考:https://jingyan.baidu.com/article/ab69b270b82c352ca7189fbe.html)qmake中可以...

2021-07-04 10:27:49 1609

原创 mac 10.14+ Qt程序发布的整理

最新升级到10.14.5后,基于OBS的程序用到麦克风后摄像头,在开启摄像的时候crash,这个应该是系统没有授权摄像头权限导致的,需要我们在应用的plist文件里增加权限请求列表(NSMicrophoneUsageDescription,NSCameraUsageDescription),这样就不会crash了。授权字段也可能是变成(Privacy - Camera Usage Desc...

2020-04-06 15:33:20 858 2

原创 NSIS在64位打包时无法读取注册表

最近项目需要打64版本,在安装vs redist 需要判断是否已经安装过了,在引入!include "x64.nsh"后,用ReadRegStr读取注册表时一直错误,无法正确判断。后来查了资料,需要在64的时候设置SetRegView 64能正常读取,参考:http://www.cppblog.com/humanchao/archive/2012/03/09/167468.html...

2020-02-14 21:28:02 511 1

原创 mac下关于FFmpeg中使用install_name_tool错误的修复

在编译好的FFmpeg中通过install_name_tool修改依赖关系,会出现以下错误:error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/install_name_tool: changing install names or rpaths can't be...

2020-01-09 09:27:42 830

转载 Qt Creator 使用技巧之提高编译速度

原文链接:https://blog.csdn.net/hsshh1988/article/details/52604196环境:win10, Qt 5.4.1,编译器mingw32项目: Qt for AndroidQt Creator 在编译android项目时不支持预编译,默认cpu单核编译,工程稍大一点导致编译过程极其缓慢,影响效率。不过Qt Creator自带了多核编译工具支...

2019-11-14 18:37:36 465 1

原创 关于Mac下QtAV的使用

正常情况下,QtAV编译好会在输出目录创建一个lib_osx_x86_64_llvm目录,在此目录下生成libcommon.a、libcommon.prl、libQmlAV.dylib、QtAV.framework、QtAVWidgets.framework,其中我们必须要引用的是libcommon.a和QtAV.framework,其他的可以根据自己的需求添加。例如:需要Qml模块就添加libQ...

2019-07-26 18:44:56 796

原创 关于新装的vs2015 +Qt Creator rc.exe无法找到的问题解决

最近从VS2013升级到VS22015,对应的qt的版本5.7.1版本的vs版本不同而重新安装,装好后编译运行,发现程序报错,LINK : fatal error LNK1158: 无法运行“rc.exe”通过全局搜索,发现本地有好多个rc版本,我目标选的vs是8.1查看了下编辑器的 配置,选择是对的从而找到此脚本运行C:\Program Files (x86...

2019-05-24 15:34:48 2358

原创 Mac OBS 浏览器插件升级obs-browser

在升级obs-browser,需要把obs-browser-page打包进来,但在本地上跑是正常,到其他机子上运行,加载浏览器插件时就crash。分析步骤:obs-browser 依赖于CEF,在确定了CEF已经一致的,排出了CEF 里“ChromiumEmbeddedFramework.framework”库的问题通过加log代码,确定了代码在CefInitialize(args, ...

2019-03-26 21:25:32 2676

原创 Unknown CMake command “set_xcode_property“

在mac下用cmake编译OBS项目时,在插件obs-browser时遇到了“Unknown CMake command "set_xcode_property"”错误,此时错误是因为CMakeLists.txt文件缺少了set_xcode_property的宏定义,修复方法是在用到set_xcode_property时前后加上宏定义例如:if (APPLE AND XCODE) ...

2019-03-25 09:23:17 1645 7

原创 nsis 安装 vcredist_x86

在win打包发布,需要通过NSIS发布,中间需要安装vcredist_x86,在安装vcredist_x86之前,要检测本地是否已经安装了vcredist_x86,目前网上有很多通用的办法,例如:https://blog.csdn.net/happyrabbit456/article/details/8239673 不同版本的vcredist_x86,这个id值是不同的,那如果找到我们...

2018-12-26 11:30:07 2041

原创 packges 学习笔记

mac可以通过packges工具来生成pkg包,具体的教程可以参考文档http://s.sudre.free.fr/Software/documentation/Packages/en_2017/index.html。有时我们安装需要额外的操作,packges提供了常用的脚本支持,例如shell、python、perl等。但需要注意的是,脚本运行后需要返回值。具体的返回值定义如下:http...

2018-12-20 16:41:07 295

原创 Mac App 属性设置

#include <AppKit/AppKit.h>void MainWindow::test(){    NSApplicationPresentationOptions m_presentationOptions = [NSApp presentationOptions];    qDebug()<<"m_presentationOptions="<...

2018-12-20 15:19:41 1152

原创 Mac WId 绘制覆盖

QWidget *parentWidget = new QWidget;QWidget *renderWidget = new QWidget;renderWidget->setGeometry(0,0,280,400);QHBoxLayout *layout = new QHBoxLayout(m_widget);layout->addWidget(renderWidge...

2018-11-26 15:45:26 180

原创 Qt for Mac framework

mac 下加入第三方的framework时,经常会出现运行错误 image not found我们可以在“项目->run->run environment”通过修改DYLD_FRAMEWORK_PATH变量的值解决,默认情况下DYLD_FRAMEWORK_PATH指定了qt的framework的路径,我们可以增加第三方framework的目录,从而可以在qt creator 里...

2018-09-05 16:19:32 1354

原创 OBS预览窗口的设置

默认情况下,主界面预览有边际,这个边际大小是通过宏PREVIEW_EDGE_SIZE定义的,默认是10,在window-basic-main.hpp定义,可以修改其值调整边际大小缩放空余的背景颜色修改:void obs_display_set_background_color(obs_display_t * display,uint32_t color); 可以设置背景颜色...

2018-08-29 17:32:05 9731

原创 记录setSizeConstraint(QLayout::SetFixedSize) 遇到的问题

有时为了让窗口根据具体内容调整到合适大小,在窗口里面有QStackedWidget时,且QStackedWidget放了widget,在mac下高度一直有25左右的误差,宽度是正常的,可以通过QWidget::setFixedSize(const QSize &s)来自定义这个大小,但这样需要自己计算QStackedWidget里的widget大小,比较麻烦...

2018-06-28 11:12:00 3565

原创 关于gs_texture_set_image设置无效的问题

在开发插件的时候,为了显示自定义的图片,我们通过gs_texture_create创建了一个texture,但在创建的时候,如果要通过gs_texture_set_image更新这个texture,需要在创建的时候传入GS_DYNAMIC,否则调用gs_texture_set_image将无效。tex_image = gs_texture_create(m_image.width(),m_imag...

2018-06-07 09:45:07 508

原创 OBS crash01

本地保存的部件数据中,如果存在摄像头部件(摄像头数据符合本地,即本地有对应的摄像头),但这个摄像头不属于任何场景,此时程序必crash,OBS 目前也是会crash...

2018-04-03 23:02:03 495

原创 QGraphicsItem 如何导出为png或者svg图

两种方式 假设有 QGraphicsItem item;方式一  QPixmap pix(item->boundingRect().width(),item->boundingRect().height());        QPainter painter;         pix.fill(Qt::transparent);//用透明色填充        painter.begin...

2018-03-01 15:47:14 3015

原创 QWebEngineView 无法获取鼠标事件QMouseEvent

最近有个需求,需要在QWebEngineView加载网页后模拟一个点击,直接创建一个QMouseEvent同过QApplication::sendEvent或者QApplication::postEvent发送给QWebEngineView,发现QWebEngineView中没有执行QWebEngineView::mousePressEvent和QWebEngineView::mouseRelea

2017-11-10 16:25:57 6001 4

原创 Mac 手动签名记录

原来通过shell实行自动打包功能,通过DeveloperID来做签名,以前签名都是没问题,但最新同样的脚步签名后,却在新的机子跑,出现无法识别的开发者身份,原来以为是DeveloperID的证书过期了导致的,通过xcode新建一个application(默认),用DeveloperID证书签名的时候,既然是可以的,但当我加入第三方依赖库的时候,也是不能成功签名,在网上了找了好多资料,终于还是在官

2017-08-18 09:52:03 476

原创 Mac Codesign: signature too large to embed

今天打包遇到一个问题,签名时遇到一个错误,signature too large to embed (size limitation of on-disk representation)通过网上搜索,找到解决的办法是在传入的参数上加上--timestamp=none参考地址:https://github.com/electron-userland/electron-

2017-08-18 09:44:24 1032

原创 MacOS10.9编译OBS-studio

最新的OBS支持MacOS10.9以及以上版,因原来在10.12下更新homebrew导致一定要用xcode8.2.1编译,导致libavfilter依赖于系统CoreImage,此Framework只有在10.11及以上的版本才有,从而到时OBS不支持10.11以下的版本。为了解决这个问题,在MacOS10.9下编译相应的库,从而达到支持10.9以以上版本。安装xcode,可以从ht

2017-04-07 20:01:27 785

原创 Qt-Xcode升级导致编译不过

mac下,不小心升级xcode,可能会到时Qt编译找不到相应的SDK版本,例如:升级前SDK是=11,升级XCODE后SDK=12,但Qt依然还是找到是SDK=11,从而导致编译不过,此时我们可以修改qt的安装目录下一个文件即可,我本机的qt目录是:/Users/mzw/Qt5.7.1/5.7/clang_64/mkspecs/features/mac/sdk.prf,把sdk.prf里面的在函数

2017-04-06 11:04:51 1441 2

原创 obs-studio 二次开发之mac音频列表为空

mac下obs插件mac-capture在获取音频设备名称转char*时,因出现中文到时转换失败,从而音频设备列表为空。如果系统改成英文版就可以。可以修改mac-capture下的mac-helpers.h的cf_to_dstr借口static inline bool cf_to_dstr(CFStringRef ref, struct dstr *str){size_t

2017-04-06 08:53:39 1612

原创 通过浏览器输入url启动本地应用程序(mac、win、Qt)

浏览器调用本地,mac和win的实现的逻辑类似,但实现的协议有所不同,下面就把最近研究的分享一下。win:win下通过注册表实现,相关资料挺多的,在安装程序里通过写入注册表,程序里通过传递的参数实现具体功能。mac:mac下实现就比较简单,每个app的boule下都有个info,设置CFBundleURLSchemes里面的array数据,可以是多个哦,这样就能通过TestOn

2016-08-04 10:13:06 2717

走出软件作坊

大家从各个开发语言的优缺点和适用领域,一直讨论到设计模式、框架、重构、单元测试,乃至敏捷编程,最后都讨论到了软件开发过程管理,甚至都谈到了盈利模式和中国软件的悲哀。

2013-11-11

让Qt应用程序跑在Android上

Qt最大的优势就是跨平台,一次性开发的Qt应用程序,可以跑Windows、跑linux、跑MAC……如今移动平台android操作系统如此火爆,Qt当然不能放过对android的支持,对了,还有iphone/ipad。而且,c++开发者们,想做android开发也不是问题了!

2013-11-11

ubuntu下安装Qt全程图解

ubuntu10.10建立QT开发环境图文详解 安装g++,ubuntu默认是不带g++的,如果不安装的话,后面是 无法进行桌面版的qt应用程序进行编译

2012-04-06

如何用虚拟机安装linux

根据提示正触安装VMWare到硬盘中利用VMWare安装linux

2012-04-06

Qt教程实例分析

[QT]QT教程之实例分析[一]文件颜色和字体对话框 重点知识已近在代码里注释... 请仔细看代码 原创作者斯人,ISDN 号:siren0203 表示感谢! 整理人:锋行,ISDN 号:loryrichie,百度号:杨门剑侠 转载请保留此原创文章链接http://blog.csdn.net/siren0203

2012-03-22

4 Qt Creater系列教程.83

为了使更多的Qt初学者能尽快入门Qt,也为了Qt及Qt Creator的快速普及,我们花费大量精力写出了这一系列教程。虽然教程的知识可能很浅显,虽然教程的语言可能不规范,但是它却被数十万网友所认可。我们会将这一系列教程一直写下去,它将涉及Qt的方方面面。

2012-03-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除