- 博客(62)
- 资源 (35)
- 收藏
- 关注

原创 QThread 的使用
文章目录1. 引言2. QThread 文档3. QThread::run 和 QObject::connect4. QObject::moveToThread()5. 使用场景对于子类化 Thread 的方式对于 worker move to thread 的方式1. 引言你会用QThread吗?有几种使用方式?这几种使用方式都在何种场景下使用?有什么需要注意的地方吗?2. QThr...
2018-09-21 16:41:17
558

原创 C 语言实现面向对象编程
C 语言实现面向对象编程1、引言面向对象编程(OOP)并不是一种特定的语言或者工具,它只是一种设计方法、设计思想。它表现出来的三个最基本的特性就是封装、继承与多态。很多面向对象的编程语言已经包含这三个特性了,例如 Smalltalk、C++、Java。但是你也可以用几乎所有的编程语言来实现面向对象编程,例如 ANSI-C。要记住,面向对象是一种思想,一种方法,不要太拘泥于编程语言。...
2018-08-14 18:36:38
60901
28

原创 基于MuPDF和Qt的PDF阅读器的开发
基于MuPDF和Qt的PDF阅读器的开发一、引言设备上要渲染显示PDF文档,类似Adobe Reader、福昕阅读器等软件。如何去实现?Handling PDF这篇文档讨论介绍了在Qt应用程序中各种操作PDF的资料。从资料中看出,我们是要阅读渲染PDF文档到我们的设备中,关键还要能交叉编译移植到我们的设备上。在渲染显示方面整体给出三种方案: - QtPDF(基于PDFium),不太好...
2018-07-17 15:24:59
6119
6

原创 韩语输入法,了解一下
韩语输入法,了解一下韩语输入法,了解一下一、韩语输入法?二、hangulIME库三、Demo1、创建Qt项目2、加载库文件3、使用韩语输入4、总结一、韩语输入法?少啰嗦,先上图 这和Win7系统的韩语输入法效果几乎一样。对于我们产品设备上来说,足够了。二、hangulIME库这个库只有两个简单的API接口,并且是用C++所写,兼容性极好...
2018-07-17 13:24:27
2580
2

原创 Qt5软键盘实现中文拼音输入法
基于Qt实现的虚拟键盘实现输入法在网上所有资料看来,几乎都是基于生成的中文汉字数据库实现的方法,不够灵活,不够智能。拼音输入法的库我们采用的安卓底层的谷歌拼音输入法,在Qt5.7之后,Qt官方也出了一款输入法(支持中文拼音输入),但是是基于QML设计的,我们拿到其源码发现,其中的拼音输入法实现也是拿了安卓底层的谷歌拼音。 一定要记住:在有轮子的情况下,我们千万不要自己造轮子
2017-10-31 20:59:38
38708
74

原创 如何将本地图片嵌入网页?
因为经常会用Mardown写作,图片一般是用本地图片,但是导出html的时候,图片路径还是连接到本地的图片,如果把这个网页文件放到其他地方,就找不到图片了,所以最后显示不出来。后来得知可以把图片以base64编码方式嵌入网页之中,这样随便移动html文件到任何地方,打开之后都会显示图片了,唯一缺点就是会增大此html文件的大小。 但是,该如何解决呢?
2017-10-31 20:52:08
5261

原创 QCustomPlot实现矩形缩放图表
QCustomPlot实现矩形缩放图表意图 我们知道图表有些基本的功能,比如放大(ZoomIn)、缩小(ZoomOut)、拖拽(Drag)、恢复(1:1或ZoomReset)。这些功能QCustomPlot已经几乎都有了,但是选择矩形区域进行缩放的功能没有给出很好的接口,这可能就要我们自己实现了,这就是写这篇文章的目的。
2016-05-26 16:10:29
11468
1

原创 Qt5.5.0编译QtAV
Qt5.5.0编译QtAV了解QtAVQtAV下载链接QtAV(github) 我的编译环境: - win7 32-bit系统 - Qt5.5.0 - Mingw32编译 - Qt Creator 3.4.2声明:如果你的不是这样的环境,后面我可不敢保证一定没有问题。
2016-05-25 11:45:27
2385

原创 Qt Data Visualization 安装教程
Qt Data Visualization 安装教程上次介绍了Qt Charts模块。这次要介绍一个更酷炫的Qt模块,酷炫到爆,Qt数据可视化。简单介绍页面QtDataVisualization
2016-05-11 17:46:07
10549
5

原创 Qt放大镜代码设计
看到自己手机T1上面的那个搜索app的图标是个放大镜,但是锤子科技把它真正做成了也具有放大镜的功能。 由于自己刚学Qt,所以也想在电脑上试一下做一个放大镜的小玩意。但是思路有限,对Qt掌握也不是非常好,就很的简单做了一个,提供些思路给有需要的人,但是,做的还不够精细,不够好,希望以后随着对Qt的掌握程度的加深后,会重新做一个更好的。
2015-10-09 11:22:16
4360
2

原创 Qt实现等待提示框(图片和movie实现)
Qt实现等待提示框(图片和movie实现)上一篇文章说了怎样用代码实现等待提示框,这篇文章来说一下怎么用切换图片或者播放gif图片来实现。
2015-09-23 13:36:16
3802
1

原创 Qt自定义控件之进度条(代码实现)
旋转的宝马图标。我在其这个例子的基础上扩展了一些控件。首先学这个例子,你得有Qt基础,会自己创建工程编译工程,其次要懂Qt最基本的2D绘图。
2015-09-22 21:32:50
6212

原创 Qt绘图控件QCustomPlot安装
Qt绘图控件QCustomPlot安装 QCustomPlot是为了绘图和数据可视化而产生的一个Qt控件。它没有其他的依赖关系,并且有丰富的帮助文档。这个控件关注于好看,高质量2D绘图,图形和图表,以及可视化应用程序实时的效率。此控件使用起来非常简单,不像QWT那样。也可以自己使用两个源文件编译生成库文件,非常方便。
2015-09-11 08:31:31
3159
原创 聊聊跨省迁户口
聊聊跨省迁户口个人基本情况先说下我个人情况,本人河南省北部某市农村人,迁往江苏省北部某市。因为老婆是江苏那边的,所以在那边买的房,房子属于夫妻共同所有,就是说房产证上是我老婆和我两个人的名字。我迁户口类型相当于是住房迁移,当然还有其他类型,例如夫妻投靠,人才引进等。另外,我这还是跨省迁户口。我的户口簿是独立的一个,我当时上大学好像农转非了,所以有了独立的户口簿。整个过程分三步:去迁入地办理...
2019-08-31 16:07:12
1235
1
原创 交叉编译tcpdump
交叉编译tcpdump交叉编译tcpdump1、简介tcpdump2、交叉编译tcpdump3、使用tcpdump1、简介tcpdump针对网络抓包工具,大家肯定都听说过Wireshark,Wireshark支持Windows平台和Unix平台,功能当然也非常强大。但是在我们开发的一些嵌入式设备中,对图形界面的支持较弱,所以在Linux下的话,还是用tcpdump...
2018-07-17 15:12:17
7862
1
原创 如何更快的操作jpeg图片?
如何更快的操作jpeg图片?如何更快的操作jpeg图片?1. 还是先了解一下jpg格式吧2. 搜索资料中3. 编译和使用libjpeg-turbo4. 测试和进一步的优化其他资料:收到一个任务,加载jpeg图片时间有点慢,让优化其加载速度。我也仅仅是知道jpg是众多图片格式的一种啊,如何优化呢?挠头中。。。。。。1. 还是先了解一下jpg格式吧.j...
2018-07-17 15:04:33
872
原创 matlab文件读写库(matio),了解一下?
matlab文件读写库(matio),了解一下?matlab文件读写库(matio),了解一下?一、引言二、下载,编译三、Demo四、VS 编译 matio五、Ending一、引言MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink...
2018-07-17 11:00:27
4249
1
原创 CppCheck 和 SourceMonitor 在 Source Insight、Qt Creator、VS 2013 上的安装配置和使用
一、引言软件在开发过程中如何保证代码质量?仅凭个人能力去检视判定,效率太低,而且和个人能力有很大关系,如果能有一些小工具来协助,岂不是如虎添翼?本文就是介绍CppCheck和SourceMonitor两个小工具的安装和使用,在我们软件开发过程中,帮助我们去检查、规范、重构、总结我们的代码,有利于个人能力提升,有利于软件开发质量的保证和提高。本文不介绍这两个工具是什么,以及有什么用处;而...
2018-07-14 10:03:49
2547
原创 交叉编译freetype
交叉编译freetypetar zxvf freetype-2.8.1.tar.gzcd freetype-2.8.1/./configure CC=arm-none-linux-gnueabi-gcc --host=arm-linux --prefix=$PWD/INSTALL --with-zlib=no
2017-11-23 21:41:55
3735
原创 交叉编译zlib
交叉编译zlib下载libpng下载的是目前为止最新的zlib zlib-1.2.11.tar.gz$ tar zxvf libpng-1.6.34.tar.gz $ cd libpng-1.6.34/$ export CC=arm-none-linux-gnueabi-gcc $ ./configure --prefix=$PWD/install$ make && mak
2017-11-08 22:07:51
861
原创 四种环境下编译nanomsg库
VS2013编译生成nanomsg库MinGW编译生成nanomsg库Ubuntu下编译生成nanomsg库交叉编译环境下生成nanomsg库
2017-04-14 15:49:09
4645
1
原创 下载安装发布PyQt5程序
下载安装发布PyQt5程序 安装PyQt5 pip isntall pyqt5编写demo用pyinstaller打包成exe发布
2017-03-30 20:10:33
3200
原创 Item 08:别让异常逃离析构函数
Item 08:别让异常逃离析构函数- 析构函数绝对不要抛出异常。如果一个被析构函数调用的函数可能抛出异常,析构函数应该捕捉任何异常,然后吞下它们(不传播)或结束程序。 - 如果客户需要对某个操作函数运行期间抛出的异常做出反应,那么class应该提供一个普通函数(而非在析构
2016-10-19 19:16:50
365
原创 Item 07:为多态基类声明virtual析构函数
C++指出,当derived class对象经由一个base class指针被删除,而该base class带着一个non-virtual析构函数,其结果是未定义的——实际执行时通常发生的是对象的derived成分没有被销毁,于是造成一个诡异的“局部销毁”的现象,这可是造成资源泄露、破坏数据结构、在调试器上浪费许多时间的绝佳必备毒药。
2016-10-17 21:32:17
343
原创 arm交叉编译器简单介绍
交叉编译器命名规则:交叉编译工具链的命名规则为:arch [-vendor] [-os] [-(gnu)eabi]arch - 体系架构,如ARM,MIPS vendor - 工具链提供商 os - 目标操作系统 eabi - 嵌入式应用二进制接口(Embedded Application Binary Interface)
2016-07-19 09:34:17
5825
原创 EasyARM-iMX283A 安装交叉编译工具链
EasyARM-iMX283A 安装交叉编译工具链交叉编译器ARM-Linux 交叉编译器可以自行从源代码编译,也可以从第三方获取,但最好直接从第三方获取。如果自己编译的话,一是编译过程繁琐,不能保证成功,二是就算编译成功,也不能保证交叉编译器的稳定性,编译器的不稳定性会对后续的开发带来无限隐患。而第三方提供的交叉编译器通常都经过比较完善的测试,确认是稳定可靠的。
2016-07-13 09:28:48
3116
原创 python启动应用程序和终止应用程序
python启动应用程序和终止应用程序每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件。一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本产生了。
2016-05-31 13:55:51
7871
原创 Markdown、Landslide和PPT
Landslide可以利用 markdown、ReST 或 textile 格式文件生成 HTML5 的网页 slides,参考了 Google 的 html5slides。Landslide 基于 Python 开发,最大的优点就是简洁,从安装到编写,到生成的 slides 风格都十分简洁。整个过程,用户只需要懂 Markdow
2016-05-17 12:41:02
1549
原创 Chapter 19:Advanced Function Topics
Learning Python 第五版 英文版Chapter 19:Advanced Function Topics主要内容: - 递归函数 - 函数属性与注释 - lambda表达式 - 函数编程工具,例如map和filter。
2016-04-27 16:52:42
536
原创 Item 06: 若不想使用编译器自动生成的函数,就该明确拒绝
Item 06:Explicitly disallow the use of compiler-generated functions you do not want.假设你现在要实现一个类,你不想实现类中的某些功能,该怎么办?
2016-04-26 13:43:03
470
原创 Item 05:了解C++默默编写并调用哪些函数
Item 05: Know waht functions C++ silently writes and calls.空类并不一定是空的什么时候空类不再是个空类呢?答案是:当C++处理过之后。如果你自己没声明,编译器就会为它声明(编译器版本的)一个拷贝构造函数、一个赋值操作符和一个析构函数。此外如果你没声明任何构造函数,编译器也会为你声明一个默认构造函数。所有这些函数都是public且inline的
2016-04-18 15:12:48
405
原创 Item 04:确定对象被使用前已先被初始化
Item 04:确定对象被使用前已先被初始化 读取未初始化的值会导致不明确的行为。而最佳的处理办法就是:永远在使用对象之前先将它初始化。
2016-04-13 16:21:57
1404
原创 Item 03:尽可能使用const
Item 03: Use const whenever possible关键字constconst允许你指定一个语义约束(也就是指定一个“不该被改动”的对象),而编译器会强制实施这项约束。如果你想让某值保持不变,就应该明确说出来,因为说出来就可以获得编译器的帮助,确保这条约束不被违反。关键字const多才多艺。
2016-04-11 16:44:27
802
原创 Item 02:尽量以const,enum,inline 替换 #define
Item 02: Prefer const,enums,and inlines to #define本条款或许改为“宁愿选择编译器而不是预处理器”。
2016-04-09 18:42:01
448
原创 Item 01:视C++为一个语言联邦
Item 01:视C++为一个语言联邦如今的C++已经是个多重范型编程语言:一个同时支持过程形式、面向对象形式、函数形式、泛型形式、元编程性形式的语言。
2016-04-08 13:29:54
692
Qt放大镜代码设计
2015-10-09
Qt绘图控件QCustomPlot资源
2015-09-11
图片缩放与旋转的资源代码
2015-08-18
使用标准输入对话框
2015-08-17
Pyinstaller帮助文档
2017-09-19
《C++ Primer》 第四版 第16章 模板与泛型编程 思维导图
2016-04-02
《C++ Primer》 第四版 第15章 面向对象编程 思维导图
2016-04-02
C++ Primer 第十四章 重载操作符与转换 思维导图笔记
2016-03-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人