近期写了一些Qt的代码,用到了Qt的MVC设计模式,于是仔细看了几遍Qt-MVC的assistant,下面一些基本概念的介绍。 翻译自:qthelp://com.trolltech.qt.485/qdoc/model-view-programming.html Models 所有的item models都是基于QAbstractItemModel类,这个
Sigar C API 使用中sigar_format.h中函数无法链接lib的问题
Sigar是一个对系统运行相关参数获取的库,支持C++、java、python等10几种语言调用。常见的Sigar使用均是通过java进行调用,sigar.jar已经对sigar进行了非常好的封装,所以只要理解了参数意思,使用上不会太大的问题。目前我在做一个C++分布式系统中,需要对系统参数上报到zookeeper中,于是采用sigar进行封装,我这里对
编译opencv添加x264和ffmpeg支持
从参加工作到现在,使用opencv已经有近五个月的时间,从刚开始误入歧途学习1.x版本的API到后来纠正学习路线,再到用Opencv做很多图像处理工作。在这过程中,opencv从2.4.3更新到了2.4.5,每一次都让我有一种耳目一新的感觉,当我使用2.4.3编写程序要被java调用时,刚开始想到采用JNI,但是发现2.4.3到2.4.4的更新正式添加了
“linker input file unused because linking not done”-solution
纠结了一天的给Linux的一个小工程写了个makefile,由于用到了开源库,而且还是相对比较老的库,所以与新版本的API进行编程就特别得注意API的变化。make时遇到问题如题。 经过仔细检查发现是下面这里出的warning: $(OBJS) : $(SRC) $(CC) -c $(SRC) $(CFLAGS) $(LDFLAGS) 因为这里只是编译成
采用OSTU算法对图像进行动态阈值二值化(基于OpenCV)
在对图像进行预处理的过程中,经常会遇到对图像进行二值化,比如对图像轮廓进行提取时,是一种比较常规的方法。下面是通过是我通过网上搜集到的OSTU算法动态阈值二值化图像的方法,主要是将1.x接口,修改成了2.x版本的API,并对其中的部分代码进行了修改。 #include “opencv2/opencv.hpp” #include <iostream&
Qt设置字体颜色&设置背景色
QT中的字体(比如QLabel中的字体)有时需要在程序中进行动态的设置。其中字体和颜色是分开设置的。设置字体主要使用的是QFont对象。设置颜色主要使用的是QPalette(调色板)来进行。所以要包含这两个头文件。 #include <QFont> #include <QPalette> 设置字体的时候,以QLineEdit为例,
C语言格式化输出时间函数strftime()
今天在做根据日期时间+ID作为文件名存储时,用到了格式化时间的要求,如果单纯用struct tm这个结构体中获取到的信息来拼接字符串的话,如果是个位数,则不会在前面补0,比如我需要的是20130306,如果采用snprintf拼接字符串时获取到的时201336,这与我之前设想的有所不同,记得以前曾经自己实现过一个格式化的函数,但是比较繁琐。于是googl
Qt中Esc键触发事件处理
有一段时间没有使用Qt开发,最近给公司写的小DEMO中,用到了Qt编写的界面,其中有几处用到Event处理,在编写对Esc键处理的过程中,发现closeEvent无效,最终发现了两种解决办法。 1、重新实现reject()方法,关闭对话窗体不一定必须采用closeEvent进行处理。这是因为按下Esc键默认触发的是reject方法,可以重写reject方
待业复习–C++Primer
在学校等待考试的日子是漫长的,散漫了几天后,终于忍耐不住,随手拿了本C++ Primer中文版,就去自习室坐了一晚上,写写画画,倒也算清净。早上慵懒的醒来,打开电脑,瞅瞅NBA赛况,浏览一下博客,上午就这样过去了。记录一下昨天画的C++Primer书上的一些东西,也算是给自己待业复习的一个安慰。 1.关于const: const对象必须用const引用;
Qt在Label上显示图片-嵌入式远程视频监控客户端开发
最近在做一个基于ARM+v4l2+x264+qt的嵌入式远程视频监控系统,主要功能已经完成,准备过些时候,把做的过程的遇到的问题以及相关流程整理一下发布成文章。先写一个最简单的在QLabel中显示jpeg图片的代码,只有几行,但网上的着实比较乱,完全都是复制来复制去,只能自己揣摩调试。下面是经过我测试显示成功的。先上代码: //构造函数中声明QLabel