http://stackoverflow.com/questions/5960074/qimage-in-a-qgraphics-scene http://stackoverflow.com/questions/17888795/how-to-use-qpainter-on-qpixmap…
在Qt里面,.qrc文件是一种类似XML结构的文件,用结构化数据描述应用程序所需要的资源位置,例如图片,应用程序的图标文件等.它最终是与.ui文件类似都被通过Qt提供的命令行工具生成对应的qrc_XXX.cpp文件了.最终被链接到应用程序中. 对应的命令行是这样的: "$(QTDIR)\bin\rcc.exe" -name "%(Filename)" -no-compress "%(FullPath)" -o .\GeneratedFiles\q…
当然,大家都知道UI界面可以用Qt Designer在约束环境下设置编辑.ui文件,再将.ui文件转换成对应的ui_XXX.h文件,这头文件中的内容是:用C++语言实现真正的界面布局.uic -o "outputfile" "inputfile.ui"命令行可以转换 .我的理解就是,这算不算元编程的一种?包括cmake之类的算不算元编程的一种? 当然,也可以自己用C++来实现界面布局利用成员函数SetGeometry什么的,但是那样的开发效率就下降了,BUG概率引入…
我们在Qt中可以看到两个宏Q_D和Q_Q这两个红分别是取得d指针和q指针的,d指针指向封装的私有类,q指针指向公共的类.(我的理解类似于回调,回指的意思). 为什么Qt要这样实现呢?下面几个链接中的文章都做了解析和实现. http://blog.csdn.net/mznewfacer/article/details/6976293 http://blog.csdn.net/ma52103231/article/details/7464610 http://blog.csdn.net/cibire…
今天利用组件打包程序写了一些小例子,给大家贴出来,顺便提高一下记忆. 上一篇介绍了直接使用控件和使用控件打包程序对控件进行编程的方法.个人感觉后者编程更方便.不说废话了: 头文件中所需要的类型指针对象,顾名思义可以看到指针对象所述的类 MapSpace::Map *map; MapSpace::CMapXPoint *pCMapXPoint,*pCMapXPoint1;MapSpace::CMapXFeatureFactory *pCMapFeaFactory;MapSpace::CMapXFe…
For a long time, Qt has allowed you to decorate your GUIs with CSS’ish style sheets. Inspired by the web, stylesheets are a great way to stylize your Qt GUI, but it seems that few people use them. In this tutorial, we’ll create an example dialog in Q…
就是对这个contextMenuEvent 事件重新实现,在这个事件函数中创建菜单,大概就是这样. void MyItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) { QMenu *menu = new QMenu; menu->addAction("Action 1"); menu->addAction("Action 2"); menu->popup(event->…
需求是这样的: 需要给一个硬件接口测试些东西,用js来调用,js做成不同的独立模块分别测试不同的硬件接口,包括DMD内存,PCIE带宽等等.需要用一个exe来载入这些js文件分别调用测试模块.exe用Qt来做.就只能用QtScript模块了么. QtScript是一个解释脚本的引擎 符合EMCAScript标准. void test_js::ExecuteJsFile(){ QScriptEngine engine; if(JsFilePath.isEmpty()){ qDebug() <<…
最近用Qt做图像处理,以下references是需要用到的 references: http://blog.csdn.net/lyc_daniel/article/details/9193881 http://blog.csdn.net/hxingd/article/details/6972417 http://tracey2076.blog.51cto.com/1623739/539690/…
pyQT4  的Wheel 下载 https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4 python发送GET 或者 POST请求 https://www.waitalone.cn/python-httplib.html 环境部署: https://stackoverflow.com/questions/22640640/how-to-install-pyqt4-on-windows-using-pip https://blog.csdn.net/q…
由于之间写过的一篇文章,Unix,windows,Mac里面的换行符不一样,导致处理也不一样,我现在要用QString以行分割(读取的文本文件的里面有换行符).所以要通吃这三种换行符 http://www.cnblogs.com/foohack/p/4125829.html 用正则表达式QRegEx就可以了: QString.split(QRegExp("[\r\n]"),QString::SkipEmptyParts); 这样返回的List就是以行分割的. references:ht…
在上一篇 C++混合编程之idlcpp教程(一) 中介绍了 idlcpp 工具的使用.现在对 idlcpp 所带的示例教程进行讲解,这里针对的 Python 语言的例子.首先看第一个示例程序 PythonTutorial0.像很多语言的第一个例子一样,是一个打印 Hello world 的程序.用Visual Studio 2015打开解决方案文件 tutorials\PythonTutorials\PythonTutorials.sln.其下已经有多个工程文件: 在工程PythonTutori…
在上一篇 C++混合编程之idlcpp教程(一) 中介绍了 idlcpp 工具的使用.现在对 idlcpp 所带的示例教程进行讲解,这里针对的 Lua 语言的例子.首先看第一个示例程序 LuaTutorial0.像很多语言的第一个例子一样,是一个打印 Hello world 的程序.用Visual Studio 2015打开解决方案文件 tutorials\LuaTutorials\LuaTutorials.sln,其下已经有多个工程文件. 在工程LuaTutorial0中,已经加入了三个文件,…
网络编程之socketserver """ socketserver.py 中的5个基础类 +------------+ | BaseServer | +------------+ | v +-----------+ +------------------+ | TCPServer |------->| UnixStreamServer | +-----------+ +------------------+ | v +-----------+ +-----------…
QT核心编程之Qt线程是本节要介绍的内容,QT核心编程我们要分几个部分来介绍,想参考更多内容,请看末尾的编辑推荐进行详细阅读,先来看本篇内容. Qt对线程提供了支持,它引入了一些基本与平台无关的线程类.线程安全传递事件的方式和全局Qt库互斥量允许你从不同的线程调用Qt的方法.Qt中与线程应用相关的类如表6所示. 表6 Qt中与线程相关的类 使用线程需要Qt提供相应的线程库的支持,因此,在编译安装Qt时,需要加上线程支持选项. 当在Windows操作系统上编译Qt时,线程支持是在一些编译器上的一个…
/*******************************************************************************************/ 一.绘图 整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类: QPainter(画家)->QPaintEngine(中间引擎,画家与设备之间的交互(通信接口),对于应用开发一般用不上)->QpaintDevice(设备,表示画在哪里) 画图的时候就是要重写事件:…
/*******************************************************************************************/ 一.坐标系统 坐标系统相对于对于父窗口而言(最外层的父窗口就是屏幕了,也可以说外面没有窗口了,这时就是相对整个电脑屏幕而言了) 原点:就是左上角 x: 往右递增 y: 往下递增 具体见图1: 具体示例: /* 对于主窗口,坐标系统相对于屏幕 * 原点:相对于屏幕左上角 * x: 往右递增 * y: 往下递增 *…
该文章主要是通过C#网络编程的webBrowser获取网页中的url并简单的尝试瞎子啊网页中的图片,主要是为以后网络开发的基础学习.其中主要的通过应用程序结合网页知识.正则表达式实现浏览.获取url.下载图片三个功能.而且很清晰的解析了每一步都是以前一步为基础实现的. 一.界面设计 界面设计如下图所示,添加控件如图,设置webBrowser1其Anchor属性为Top.Bottom.Left.Right,实现对话框缩放;设置groupBox1其Dock(定义要绑到容器控件的边框)为Buttom,…
网络编程之socket socket:在网络编程中的一个基本组件,也称套接字. 一个套接字就是socket模块中的socket类的一个实例. 套接字包括两个: 服务器套接字和客户机套接字 套接字的实例化需要3个参数: 1.地址簇:socket.AF_INET 2. 流:socket.SOCK_STREAM 3.使用的协议: 默认为0 服务器套接字:以下简称socket_server 客户端套接字:以下简称socket_client 地址:address=('127.0.0.1',8000) so…
上一篇在这 C++混合编程之idlcpp教程Python篇(8) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相比,工程PythonTutorial7中除了四个文件PythonTutorial7.cpp, Tutorial7.cpp, Tutorial7.i, tutorial7.py 外,Tutorial6.cpp也被加入了此工程中.其中PythonTutorial7.cpp的内容基本和PythonTutorial6.cpp雷同,不再赘述.首先看一下Tutorial7.i的…
上一篇在这 C++混合编程之idlcpp教程Lua篇(8) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相比,工程LuaTutorial7中除了四个文件LuaTutorial7.cpp, Tutorial7.cpp, Tutorial7.i, tutorial7.lua 外,Tutorial6.cpp也被加入了此工程中.其中LuaTutorial7.cpp的内容基本和LuaTutorial6.cpp雷同,不再赘述. 首先看一下Tutorial7.i的内容: #import "…
上一篇在这 C++混合编程之idlcpp教程Python篇(7) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相似,工程PythonTutorial6中,同样加入了四个文件:PythonTutorial6.cpp, Tutorial6.cpp, Tutorial6.i, tutorial6.py.其中PythonTutorial6.cpp的内容基本和PythonTutorial5.cpp雷同,不再赘述.首先看一下Tutorial6.i的内容: #import "../../p…
上一篇在这 C++混合编程之idlcpp教程Lua篇(7) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相似,工程LuaTutorial6中,同样加入了四个文件:LuaTutorial6.cpp, Tutorial6.cpp, Tutorial6.i, tutorial6.lua.其中LuaTutorial6.cpp的内容基本和LuaTutorial5.cpp雷同,不再赘述. 首先看一下Tutorial6.i的内容: #import "../../paf/src/pafcor…
上一篇在这 C++混合编程之idlcpp教程Python篇(6) 第一篇在这 C++混合编程之idlcpp教程(一) 与PythonTutorial4工程相似,工程PythonTutorial5中,同样加入了四个文件:PythonTutorial5.cpp, Tutorial5.cpp, Tutorial5.i, tutorial5.py.其中PythonTutorial5.cpp的内容基本和PythonTutorial4.cpp雷同,不再赘述.首先看一下Tutorial5.i的内容: #imp…
上一篇在这 C++混合编程之idlcpp教程Lua篇(6) 第一篇在这 C++混合编程之idlcpp教程(一) 与LuaTutorial4工程相似,工程LuaTutorial5中,同样加入了四个文件:LuaTutorial5.cpp, Tutorial5.cpp, Tutorial5.i, tutorial5.lua.其中LuaTutorial5.cpp的内容基本和LuaTutorial4.cpp雷同,不再赘述. 首先看一下Tutorial5.i的内容: #import "../../paf/s…
上一篇在这 C++混合编程之idlcpp教程Python篇(5) 第一篇在这 C++混合编程之idlcpp教程(一) 工程PythonTutorial4中加入了四个文件:PythonTutorial4.cpp, Tutorial4.cpp, Tutorial4.i, tutorial4.py.这个做法和以前不太一样,前几个工程中用.i文件生成的头文件时,类型的成员函数都是用内联的方式写在头文件中.实际上按C++的使用习惯来说只有简短的函数建议以内联方式实现,其余的函数一般写在另一个对应的.cpp…
上一篇在这 C++混合编程之idlcpp教程Lua篇(5) 第一篇在这 C++混合编程之idlcpp教程(一) 工程LuaTutorial4中加入了四个文件:LuaTutorial4.cpp, Tutorial4.cpp, Tutorial4.i, tutorial4.lua.这个做法和以前不太一样,前几个工程中用.i文件生成的头文件时,类型的成员函数都是用内联的方式写在头文件中.实际上按C++的使用习惯来说只有简短的函数建议以内联方式实现,其余的函数一般写在另一个对应的.cpp文件中.此处加入…
上一篇在这  C++混合编程之idlcpp教程Python篇(4) 第一篇在这 C++混合编程之idlcpp教程(一) 与前面的工程相似,工程PythonTutorial3中,同样加入了三个文件:PythonTutorial3.cpp, Tutorial3.i, tutorial3.py.其中PythonTutorial3.cpp的内容基本和PythonTutorial2.cpp雷同,不再赘述. 首先看一下Tutorial3.i的内容: namespace tutorial { struct P…
并发编程之Operation Queue http://www.cocoachina.com/applenews/devnews/2013/1210/7506.html 随着移动设备的更新换代,移动设备的性能也不断提高,现在流行的CPU已经进入双核.甚至四核时代.如何充分发挥这些CPU的性能,会变得越来越重 要.在iOS中如果想要充分利用多核心CPU的优势,就要采用并发编程,提高CPU的利用率.iOS中并发编程中主要有2种方式Operation Queue和GCD(Grand Central D…
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用的基本已经讲完了,相信大家已经能看出MEF所带来的便利了.今天就介绍一些MEF中一些较为不常用的东西,也就是大家口中的所谓的比较高级的用法. 前面讲的导出都是在每个类上面添加Export注解,实现导出的,那么有没有一种比较简便的方法呢?答案是有的,就是在接口上面写注解,这样只要实现了这个接口的类都会…