Qt Creator

VS2015编译QGC,提示筛选器下已存在"*.qrc"

扶醉桌前 提交于 2019-12-05 15:05:43
qt creator 可以正常编译qgc,vs2015打开提示错误。 解决:把qgroundcontrol目录下的.qrc删除, mkdir build cd build qmake -tp vc ../qgroundcontrol.pro 接着vs打开qgc生成的.vcxproj工程。 此时,把刚刚删除的.qrc都恢复。 再次使用qt creator编译,运行,确保程序可以正常执行。 此时vs2015工程应该是可以打开了。编译,解决遇到的问题。 如,宏定义找不到等问题 setOrganizationName(QGC_ORG_NAME); // QGC_ORG_NAME找不到 setOrganizationDomain(QGC_ORG_DOMAIN); //QGC_ORG_DOMAIN找不到 this->setApplicationVersion(QString(GIT_VERSION));//GIT_VERSION找不到 ######################################### QGC_APPLICATION_NAME=""QGroundControl"" QGC_ORG_NAME=""QGroundControl.org"" QGC_ORG_DOMAIN=""org.qgroundcontrol"" GIT_VERSION=""Development

加快Android离线文档的访问速度

自作多情 提交于 2019-12-04 16:27:18
OptAndroidDocs 背景: 自从Google被墙了之后,访问Android的API文档一直是个问题。虽然Android SDK可以将开发文档下载下来离线查看,但是由于文档中仍然链接Google的在线资源导(js,fonts等)致访问速度仍然很慢。 网上大概有2种方法: 采用脚本删掉html文件中对在线资源的引用(网上也有别人处理过的可以下载) 是脱机查看,有人还在chrome下写了个插件。 但是我对以上两种方法还不够满意: Android文档更新之后,需要重新处理。脚本很慢,等待网友提供处理过的文档又不够及时。 我用常用的浏览器时Firefox 项目地址: https://gitee.com/vale666/OptAndroidDocs 所以决定用C++重新写一个优化Android离线文档访问速度的小程序。本项目采用Qt Creator开发(Linux下这个用起来很爽,很方便)。本项目在Linux编译测试通过,理论上windows也是可以的。 本项目编译之后会生成OptAndroidDocs,在Android的文档目录下执行OptAndroidDocs即可 Vale@PC:~/.my_files/usr/android_develop/sdk/docs$ time OptAndroidDocs real 0m14.163s user 0m11.227s sys 0m1

Linux QtCreator调用fcitx输入法解决方法

孤街浪徒 提交于 2019-12-01 02:27:01
前言 Qt .run 文件安装的软件里面没有包含fcitx输入法的库文件,所以要想在Qt中使用fcitx则需要将fcitx的库文件(.so)拷贝或连接过去,让Qt能够找到这个库 sudo ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so \ /opt/Qt5.9.6/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/ 执行上述指令后重启Qt即可 来源: oschina 链接: https://my.oschina.net/u/2628499/blog/2967323

Qt编写控件属性设计器9-数据库采集

霸气de小男生 提交于 2019-11-30 17:59:20
一、前言 数据库作为数据源,在很多组态软件中使用非常多,指定数据库类型,填写好数据库连接信息,指定对应的数据库表和字段,采集间隔,程序按照采集间隔自动采集数据库数据,绑定到界面上的控件赋值显示即可。使用数据库作为数据源,有个非常大的好处就是不用去写额外的通信代码,也与对方的什么语言什么平台无关,不会有扯皮的事情发生,例如通信协议不规范不准确导致解析不对的情况啊,这样就支持任意的语言和平台啦,毕竟有数据库这个中间载体过渡,而且任何语言任何平台都会有数据库,都兼容,所以采用数据库作为数据源不失为一种很好的方案,可以专注于软件功能的持续集成。 体验地址: https://gitee.com/feiyangqingyun/QUCSDK https://github.com/feiyangqingyun/qucsdk 二、实现的功能 自动加载插件文件中的所有控件生成列表,默认自带的控件超过120个。 拖曳到画布自动生成对应的控件,所见即所得。 右侧中文属性栏,改变对应的属性立即应用到对应选中控件,直观简洁,非常适合小白使用。 独创属性栏文字翻译映射机制,效率极高,可以非常方便拓展其他语言的属性栏。 所有控件的属性自动提取并显示在右侧属性栏,包括枚举值下拉框等。 支持手动选择插件文件,外部导入插件文件。 可以将当前画布的所有控件配置信息导出到xml文件。 可以手动选择xml文件打开控件布局

Qt编写自定义控件57-直方波形图

拈花ヽ惹草 提交于 2019-11-30 06:08:51
一、前言 直方波形图控件非原创控件,控件大全中大概有20-30个控件非自己原创,而是参考了网上开源的代码,自己加以整理和完善,新增了插件的代码使得可以直接集成到QtDesigner或者QtCreator中。直方波形图,主要就是将外部传入的坐标集合数据进行渐变过渡的绘制,产生一个动态的过渡效果,将设置的坐标集合重新运算+1变成新的坐标集合来绘制,这样看起来绘制不会很死,而是缓慢的过渡。 二、实现的功能 1:可设置最大值 2:可设置每次过渡的步长 3:可设置item之间的间隔 4:可设置渐变的背景颜色 5:可设置线条的颜色 三、效果图 四、头文件代码 #ifndef WAVELINE_H #define WAVELINE_H /** * 直方波形图控件 作者:feiyangqingyun(QQ:517216493) 2016-11-6 * 1:可设置最大值 * 2:可设置每次过渡的步长 * 3:可设置item之间的间隔 * 4:可设置渐变的背景颜色 * 5:可设置线条的颜色 */ #include <QWidget> #ifdef quc #if (QT_VERSION < QT_VERSION_CHECK(5,7,0)) #include <QtDesigner/QDesignerExportWidget> #else #include <QtUiPlugin

QML官方系列教程——QML Applications

不打扰是莪最后的温柔 提交于 2019-11-29 18:17:52
附网址: http://qt-project.org/doc/qt-5/qmlapplications.html 假设你对Qt的官方demo感兴趣,能够參考本博客的另一个系列 Qt5官方demo解析集 每一个绿色字体均是一篇博文连接。请收藏本文,本文会持续更新 。 QML Applications —— QML应用程序 QML是一种声明式语言。它提供了一组接口用来描写叙述可视化组件以及他们之间的互动。它是一个高度可读的语言,而且被设计成使组件以一个动态的方式相互连接。同一时候它使组件非常easy被复用以及创建定制的用户界面。使用QtQuick模块,设计者和开发人员能够非常easy使用QML建立带有流畅动画的用户界面,并将这些界面连接到后端的C++库上面。 What is QML? QML是一个用户接口规范和编程语言。 它同意开发人员和设计者创建高性能的。流畅的动画和视觉效果的应用。QML提供了一个高度可读的。声明式的,相似JSON语法的。并支持与JavaScript表达式相结合来达到动态属性的绑定。 Qt QML 版块具体介绍了QML语言及其基础,关于QML语言深入的信息,请參阅 Qt QML 版块文档。 下面页面包括很多其它QML信息: First Steps with QML —— 随着这些样例開始使用QML The QML Reference —— QML结构和功能參考

Qt编写自定义控件插件开放动态库dll使用(永久免费)

ε祈祈猫儿з 提交于 2019-11-29 18:16:35
一、前言 这套控件陆陆续续完善了四年多,目前共146个控件,除了十几个控件参考网友开源的代码写的,其余全部原创,在发布之初就有打算将动态库开放出来永久免费使用,在控件比较完善的今天抽了半天时间编译了多个qt版本的动态库,目前已经有26个版本,其中包括了linux版本,和头文件一起打包放在百度网盘。 开源主页: https://gitee.com/feiyangqingyun 二、控件介绍 超过146个精美控件,涵盖了各种仪表盘、进度条、进度球、指南针、曲线图、标尺、温度计、导航条、导航栏,flatui、高亮按钮、滑动选择器、农历等。远超qwt集成的控件数量。 每个类都可以独立成一个单独的控件,零耦合,每个控件一个头文件和一个实现文件,不依赖其他文件,方便单个控件以源码形式集成到项目中,较少代码量。qwt的控件类环环相扣,高度耦合,想要使用其中一个控件,必须包含所有的代码。 全部纯Qt编写,QWidget+QPainter绘制,支持Qt4.6到Qt5.12的任何Qt版本,支持mingw、msvc、gcc等编译器,支持任意操作系统比如windows+linux+mac+嵌入式linux等,不乱码,可直接集成到Qt Creator中,和自带的控件一样使用,大部分效果只要设置几个属性即可,极为方便。 每个控件都有一个对应的单独的包含该控件源码的DEMO,方便参考使用

Qt编写控件属性设计器10-导出xml

自古美人都是妖i 提交于 2019-11-29 14:26:58
一、前言 能够导出控件布局和属性设置数据到xml文件或者其他文件,也是一个非常实用的功能,类似于QtDesigner中把页面设计好以后生成的.ui结尾的文件,其实就是xml文件,按照约定的规则存储好控件名称和属性名称及对应的属性值,然后打开的时候按照这个规则取出来就行了。每个控件还有固定的几个数据需要存储,比如XY轴和对应的宽度高度,然后在xml数据文件的最开始还可以存储整个画布的宽度高度以便其他用途。导出到xml格式,是为了方便解析,毕竟xml数据格式的解析,各种语言平台都有,而且都是非常成熟快速的。其实还可以考虑存储到数据库,这样就更加强大了,能够存储的东西更多,可以干的事情更多。 体验地址: https://gitee.com/feiyangqingyun/QUCSDK https://github.com/feiyangqingyun/qucsdk 二、实现的功能 自动加载插件文件中的所有控件生成列表,默认自带的控件超过120个。 拖曳到画布自动生成对应的控件,所见即所得。 右侧中文属性栏,改变对应的属性立即应用到对应选中控件,直观简洁,非常适合小白使用。 独创属性栏文字翻译映射机制,效率极高,可以非常方便拓展其他语言的属性栏。 所有控件的属性自动提取并显示在右侧属性栏,包括枚举值下拉框等。 支持手动选择插件文件,外部导入插件文件。

Qt编写控件属性设计器2-拖曳控件

梦想与她 提交于 2019-11-29 14:24:53
一、前言 上一篇文章把插件加载好了,并且把插件中的所有控件都显示到了列表框中,这次要做的就是实现拖曳控件的功能,用户选择一个控件拖曳到画布上,松开,在松开位置处自动实例化该控件,这个需要用到dropEvent和dragEnterEvent事件,重新实现这两个事件,对拖曳的对象进行过滤并调用函数实例化该控件,在实例化该控件的同时实例化控件跟随控件以便拉伸调整大小和位置。这里需要注意的是dragEnterEvent是必须的,很多人以为拖曳只要实现dropEvent就可以了,其实不行的,没有效果的,需要先dragEnterEvent来过滤好了执行event->accept()才行,不然根本没有效果,很多人尤其是初学者都挂在这里,我就是在这里摔了一跤,好疼! 体验地址: https://gitee.com/feiyangqingyun/QUCSDK https://github.com/feiyangqingyun/qucsdk 二、实现的功能 自动加载插件文件中的所有控件生成列表,默认自带的控件超过120个。 拖曳到画布自动生成对应的控件,所见即所得。 右侧中文属性栏,改变对应的属性立即应用到对应选中控件,直观简洁,非常适合小白使用。 独创属性栏文字翻译映射机制,效率极高,可以非常方便拓展其他语言的属性栏。 所有控件的属性自动提取并显示在右侧属性栏,包括枚举值下拉框等。

Qt编写控件属性设计器5-属性中文

此生再无相见时 提交于 2019-11-29 14:24:15
一、前言 在上一篇文章中就提到过,使用qtpropertybrowser来加载属性,对应加载到的属性是英文的,也就是控件类中Q_PROPERTY描述的变量名称,如何变成中文或者其他语言显示呢?这个就需要研究qtpropertybrowser的源码了,通过研究发现,在QtObjectControllerPrivate类中负责对控件的属性名称进行遍历,然后发送到QtVariantPropertyManager进行统一的管理,那只要将这里的属性名称进行映射就行了,对应的英文到中文或者其他语言都可以,甚至枚举值的下拉框也可以在这里换成中文的。曾经想过用翻译的机制,后面发现路很漫长,而且最终还是需要映射转换,看过QtDesigner的源码,里边最终也是将翻译文件中的对应项转换成中文的。 体验地址: https://gitee.com/feiyangqingyun/QUCSDK https://github.com/feiyangqingyun/qucsdk 二、实现的功能 自动加载插件文件中的所有控件生成列表,默认自带的控件超过120个。 拖曳到画布自动生成对应的控件,所见即所得。 右侧中文属性栏,改变对应的属性立即应用到对应选中控件,直观简洁,非常适合小白使用。 独创属性栏文字翻译映射机制,效率极高,可以非常方便拓展其他语言的属性栏。 所有控件的属性自动提取并显示在右侧属性栏