- 博客(68)
- 资源 (6)
- 收藏
- 关注
转载 qt 国际化
在代码中用可以用英文命名各个元件,但是main.cpp中加入以下语句:QTranslator translator;translator.load("hellotr_la");app.installTranslator(&translator);然后运行qmake -project在生成的.pro文件中加一下语句:TRANSLATIONS=hellotr_la.ts运行
2013-10-31 15:49:03 725
转载 Qt 网格编程
Qt的网络编程具有如下特征:(1)Qt的网络接口采用C++语言封装,使用起来更加方便。(2)Qt的网络接口采用事件驱动来实现,进一步提高了易用性。(3)Qt的网络接口具有更好的跨平台性。对于面向连接的TCP编程,Qt提供了QTcpSocket和QTcpServer两个类,其中QTcpServer用来实现服务端的监听,QTcpSocket用来实现服务端和客户端的通信。使用QT
2013-10-31 12:46:50 1758
转载 qmake简介
简单的说qmake给大家提供了一个适合各个平台(当然最好是QT啦)的makefile生成器 1 介绍qmakeqmake是用来为不同的平台的开发项目创建makefile的Trolltech开发一个易于使用的工具。qmake简化了makefile的生成,所以为了创建一个makefile只需要一个只有几行信息的文件。qmake可以供任何一个软件项目使用,而不用管它是不是用Q
2013-10-31 11:15:36 1260
转载 Qt paintevent事件
如果要在QWidget中显示特殊图形,就要用到QWidget的paintEvent虚函数。该函数在Widget需要被绘制的时候调用,例如在Widget第一次被显示或者需要更新显示的时候,paintEvent函数都会被调用。在paintEvent函数可以用QPainter类来进行绘制。实际上,使用QPainter类直接在QWidget上绘图稚嫩而过在paintEvent和由paintEven
2013-10-31 11:02:12 1813
转载 Qt中的 Size Hints 和 Size Policies
Qt 中的 sizeHint 属性,sizeHint() 如何使用?Qt 中的 minimumSizeHint 属性,minimumSizeHint() 如何使用?Qt 中的 sizePolicy 属性,setSizePolicy()、sizePolicy()如何使用? 之前一直对这几个属性搞不清楚,前几天仔仔细细地看了文档解释并做了一些测试,现在来归纳一下:
2013-10-31 10:45:26 988
转载 QMessageBox中按钮汉化|确定,取消
1.方法一:[cpp] view plaincopyprint?QMessageBox mess(QMessageBox::Question, "删除提示", "确认删除所选组件?", NULL); QPushButton *okButton = mess.addButton(tr("确定"), QMessageBox::AcceptR
2013-10-28 10:26:26 1408
转载 LNK2001&LNK2019
LNK2001..转自百度百科学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非常困难。 初学者在学习VC++的过程中,遇到的LNK20
2013-10-27 17:23:09 1966
转载 error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseFilter
今天用VS2005编译DirectShow程序,发现出来很多莫名其妙的链接错误:如下: error LNK2001: 无法解析的外部符号 "public: virtual long __stdcall CBaseFilter::FindPin(wchar_t const *,struct IPin * *)" (?FindPin@CBaseFilter@@UAGJPB_WPAPAUIPin
2013-10-27 17:22:08 2315
转载 QWidget与HWND的互相转换
在编写Windows的应用程序时,我们有时不可避免地要与Windows平台固有的Win32 API打交道,但是Win32 API里面常常用到的HWND等诸多句柄QT并没有。QT作为一款优秀的跨平台GUI库,不可能未作考虑,那么需要互相转换的时候该如何做呢? HWND转QWidget123QWidget *m
2013-10-24 21:57:29 715
转载 Qt文章精选(标题及链接)
原创:浅议Qt的事件处理机制 一浅议Qt的事件处理机制 二Qt的内省机制剖析梦工厂动画与QtQML与C++混合编程使用Qt/Qt Quick宏浅议Q_INVOKABLE与invokeMethod用法全解Qt 在symbian^3, windows 7 phone的用户体验Qt资源链接收藏Qt 好书好文推
2013-10-23 14:23:11 695
转载 Qt 的线程与事件循环
周末天冷,索性把电脑抱到床上上网,这几天看了 dbzhang800 博客关于 Qt 事件循环的几篇 Blog,发现自己对 Qt 的事件循环有不少误解。从来只看到现象,这次借 dbzhang800 的博客,就代码论事,因此了解到一些 Qt 深层的实现,虽然是在 Qt 庞大的构架里只算的是冰山的一角,确让人颇为收益。 从 dbzhang800 的博客中转载两篇关于事件循环的文章,
2013-10-23 11:46:53 821
转载 Qt信号与槽
信号与槽是一种Qt特有的对象间通信的机制,是Qt区别于其他图形系统的基本特征。信号与槽之间是一种松散的连接关系,这种连接关系可以在程序运行时动态改变,这为Qt编程提供了极大的灵活性。 定义信号使用Qt的signals关键字。注意信号没有访问权限,实际上它们都是受保护权限的,也就是说只有定义信号的类自己及派生类才能发射这个信号。信号一般定义为无返回值的函数,这个函数不
2013-10-22 09:08:59 716
转载 Qt 模态对话框与非模态对话框及生命周期
如果要设置为模态对话框,最简单的就是使用exec()方法,示例代码如下: MyDialog myDlg; myDlg.exec();也可以使用show()方法,示例代码如下: MyDialog myDlg; myDlg.setModal(true); myDlg.
2013-10-21 13:05:29 653
转载 把QString转换成 char * 中需要注意的地方
最近在写一个QT程序。需要把QString 转换成char * 指针。结果遇到程序崩溃的严重错误。在大量的帮助调试下,发现是QString转换成char * 的时候,一定要定义一个QBateArray的变量。不能连写 。以下是官方回复: How can I convert a QString to char* and vice versa ?(trolltech)Ans
2013-10-21 11:03:36 719
原创 stdafx.h, stdafx.cpp的作用
在使用Vs2010 Qt插件进行界面层程序的开发的时候,创建了Qt应用程序,在程序中使用了第三方库目录和文件无法使用,最后发现是创建爱你工程时没有创建预编译文件的原因。stdafx的英文全称为:Standard Application Framework Extensions(标准应用程序框架的扩展)。所谓头文件预编译,就是把一个工程(Project)中使用的一些标准头文件(如Wi
2013-10-21 08:58:12 864
转载 Qt+VS2012+Win8 64Bit安装
学习Qt鸟,当年没听@Coding_Peon(http://weibo.com/u/1764451551?topnav=1&wvr=5&topsug=1)话好好学习QT和Python之类,现在还是要学。。。于是开始找Qt的安装文件,2013年7月初发布了Qt5.1.0,于是直接找最新的下载。下载过程中发现有一个http://qt-project.org 和 qt.digia.com,其中q
2013-10-20 14:12:34 1518
转载 Qt 5.1.1 中找不到'GLES2/gl2.h'文件的解决办法。
今天使用Visual Studio建立了一个Qt 5.1.1 项目,可是建立以后编译却发现出现了故障:[html] view plaincopysrc/gui/opengl/qopengl.h(55) : fatal error C1083: Cannot open include file: 'GLES2/gl2.h': No
2013-10-20 14:11:54 3071
转载 socket通信中select函数的使用和解释
最近在写一个网络通信函数,参考别人的代码时对select()函数的使用存有疑惑,不太确定具体的使用方法,何时使用,以及其作用。在网上搜到一篇文章,觉得介绍的不错,收藏学习。先自我总结一下。 select函数的作用: select()在SOCKET编程中还是比较重要的,可是对于初学SOCKET的人来说都不太爱用select()写程序,他们只是习惯写诸如 conncet
2013-10-17 23:18:26 865
转载 linux 创建连接命令 ln -s 软链接
硬链接和软连接的区别:要说明这个问题,先说明下liunx下文件和目录的本质。事实上,在liunx上,目录也是文件的一种,它是储存了一张表的文件。例如有一个叫程序的文件夹,里面有两个文件1和2.在那张目录表内。它的内容是这样的名称 节点1 3382 228那么什么是节点呢?c语言我们都学过,我们简单地把节点号理解成一个数组的下标,把内存看成一个大数组,每个文件都可以看成一
2013-10-17 10:01:42 694
转载 tar指令
tar jxvf 是解压指今解压以bzip2压缩的文件-j 解压命令(*.bz)-x 释放-v 释放时的信息-f 指定解压文件看看下面这些 tar -cvf a.tar a 创建文件a的tar包 tar -tvf a.tar 查看tar包包含的文件
2013-10-17 09:26:06 718
转载 QT 读取XML详解
用Qt中的QDomDocument类处理XML文件XML,全称为扩展标记语言(extensible markup language).是一种非常方便的数据交换工具。现在Blog的订阅系统输出格式就是满足XML规范的RSS格式,还有SVG矢量图形也使用了XML格式。我们在取得一个XML格式的文件后,需要作句法分析去提取发布方提供的信息。而Qt为XML提供了很好的支持,包括DOM的实现和SAX
2013-10-16 22:10:46 4891
转载 Qt学习笔记(十一)网络
Qt提供了QFtp和QHttp类两个类与FTP和HTTP协议配合使用。这些协议让文件的下载和上传变得更加容易。另外http协议也使向网站服务器发送请求并重新找回结果的过程变得简单易行。Qt还提供了较低级的QTcpSocket和QUdpSocket类,他们实现TCP和UDP传输协议。两个协议都用于创建网络客户端和服务器应用程序。若要创建服务器应用程序,还需要QTcpServer类来处理引入的TCP连
2013-10-16 22:05:44 1443
转载 Qt学习笔记(十)多线程
在一个单处理器上运行时,多线程应用程序可能会比实现同样功能的单线程应用程序运行的更慢一些,无法体现出其优势。但在多处理器上运行时,多线程应用程序可以在不同的处理器上同时执行多个线程,从而获得更好的整体性能。QT通过三种形式提供了对线程的支持。它们分别是,一、平台无关的线程类,二、线程安全的事件投递,三、跨线程的信号-槽连接。这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多
2013-10-16 18:28:46 1193
转载 C++的成员函数作为回调函数
如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。通过查询资料发现,其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递一个指向自身的指针给其成员函数从而实现程序函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数但是确有不同的数据成员。由于this指针的作用,使得将一个CALLBACK型的成员函数作
2013-10-16 15:53:14 531
转载 Qt学习笔记(九)数据库
QSql模块提供了与平台以及数据库种类无关的访问SQL数据库的接口。这个接口由利用Qt的模型/视图结构将数据库与用户界面集成的一套类来支持。由于授权许可的限制,Qt的开源版本无法提供所有的驱动程序。当配置Qt时,既可以选择Qt本身包含的驱动程序,也可以以插件的形式建立驱动程序。对于习惯了SQL语法的用户,QSqlQuery类提供了一种直接执行任意的SQL语句并处理其结果的方式;对于喜欢更高级、
2013-10-16 14:13:30 2197
原创 Qt学习笔记(八)输入与输出
Qt通过QIODevice为输入输出提供了极佳的支持。QIODevice是一个封装能够读写字节块”设备“的强有力的提取器。QT包括如下QIODevice子类:QFile :在本地文件系统和嵌入式资源中存取文件QTemporaryFile:在本地文件系统中创建并存取临时文件QBuffer:从QByteArray中读取或者写入数据QProcess:运行外部程序并处理进程间通信QTc
2013-10-16 13:38:47 5795
原创 Qt学习笔记(七)容器类
容器类通常是用于在内存中存储给定类型的许多项的模板类。C++提供了很多容器,作为标准模板库STL的一部分,他们都包含在标准的C++库中。Qt提供了属于自己的容器类,所以在编写Qt程序时,既可以使用Qt容器也可以使用STL容器。Qt容器的主要优点是他们在所有的平台上在运行时都表现的一致,并且他们都是隐含共享的。Qt容器的另一个主要特征是易于使用的迭代器类,他们可以利用QDataStream变成数据流
2013-10-16 10:47:45 1907
转载 Qt学习笔记(六)项视图类
许多应用程序允许用户搜索、查看和编辑属于某个数据集中的一些个别项。这些数据可能保存在文件中、数据库中或者网络服务器上。处理像这样的数据集的标准方式是使用Qt的项视图类(item view class)Smalltalk语言普及了一种非常灵活的对于大数据集的可视化方法:模型-视图-控制器(Model-View-Contorller, MVC)。在MVC方法中,Model代表数据集,它对需要查看数
2013-10-15 22:54:50 6418 1
原创 Qt学习笔记(五)拖放
拖放拖放是在一个应用程序内或多个应用程序间传递信息的一种直观的现代操作方式。除了为剪贴板提供支持外,通常它还提供数据移动和复制的功能。在实现的过程中,可以复用拖动代码来实现对剪贴板的支持,之所以能够复用,是因为拖动与剪贴板的功能机理都是以QMimeData类为基础的,而QMimeData是一个可以提供不同格式数据的类。 使拖动生效拖动操作包括两个动作:拖动和放下。Qt窗口部件可以作为拖
2013-10-15 19:45:04 3403
转载 QT事件传递与事件过滤器
Qt程序是事件驱动的, 程序的每个动作都是由幕后某个事件所触发. Qt事件的类型很多, 常见的qt的事件如下:键盘事件: 按键按下和松开.鼠标事件: 鼠标移动,鼠标按键的按下和松开.拖放事件: 用鼠标进行拖放.滚轮事件: 鼠标滚轮滚动.绘屏事件: 重绘屏幕的某些部分.定时事件: 定时器到时.焦点事件: 键盘焦点移动.进入和离开事件: 鼠标移入widget之内,或是移
2013-10-15 10:13:49 856
转载 Qt自定义事件的实现
初学Qt,用了Qt自带的事件,然后想怎么才能定义自己的事件呢?又如何使用自定义事件呢?看了篇文章,说先要子类化QEvent,然后定义自己的QEvent::Type,然后重写QWidget::event()函数,然后就可以调用QCoreApplication::sendEvent()或者QCoreApplication:;postEvent()发送事件就好了。但我比较笨,还是云山雾罩,不知道怎么下手
2013-10-15 10:10:44 902
转载 Qt学习笔记(四)二维图形
[html] view plaincopy 本章介绍Qt的二维图形引擎,Qt的二维图形引擎是基于QPainter类的。span style="color:#ff0000;">QPainter既可以绘制几何图形(点、线、矩形等),也可以绘制像素映射、图像和文字。此外QPainter还支持一些高级特性,例如反走样、像素混合、渐变填充和矢量路径等。QPainter也支
2013-10-15 09:30:54 2516
原创 Qt学习笔记(三)事件处理
事件处理1、事件事件是由窗口或者Qt自身产生的,用以响应所发生的各类事情。当用户按下或者键盘或者鼠标按钮时,就可以产生一个键盘或者鼠标事件;当某个窗口第一次显示的时候,就会产生一个绘制事件,用来告知窗口需要重新绘制它本身,从而使窗口可见。大多数事件是作为用户动作的响应而产生的,但是也有一些例外,比如定时器事件,则是由系统产生的。在使用Qt进行编程开发时,基本不需要考虑事件,因为在发生某
2013-10-15 09:21:22 9594 1
转载 QT中窗口刷新事件的学习总结
一.主要理解一下几个方法和属性:1.QWidget * QScrollView::viewport () const2.void QWidget::paintEvent ( QPaintEvent * ) [虚 保护]3.void QWidget::repaint ( int x, int y, int w, int h, bool erase = TRUE ) [
2013-10-15 08:51:14 1936
转载 Qt学习笔记(二)布局管理
布局管理主要用于在窗体中摆放每一个窗口部件,以及自动调整窗口部件在窗体中的大小和位置。 Qt提供了多个用于摆放窗口部件的类: QHBoxLayout 、 QVBoxLayout 、 QGridLayout 、 QStackedLayout 。 其中前 3种是最重要的布局管理器,其用法也很简单,使用 addWidget()将需要摆放的窗口部件添加到 Layout里面。 Layout本身也可以
2013-10-14 23:14:43 7472
转载 qt QSettings 用法总结
用户对应用程序经常有这样的要求:要求它能记住它的settings,比如窗口大小,位置,一些别的设置,还有一个经常用的,就是recent files,等等这些都可以通过Qsettings来实现。 我们知道,这些settings一般都是存在系统里的,比如windows一般都写在系统注册表或者写INI文件,mac系统一般都在XML文件里,那么按照一般的标准来说,许多应用程序是用INI文件来实
2013-10-14 16:50:35 2720
转载 QT学习笔记之 IconEditor
这次写了一个简单的Icon编辑器,功能很简单的说.....详见代码 ================================================================= iconeditor.h [cpp] view plaincopy#ifndef ICONEDITOR_
2013-10-14 15:58:59 1359
转载 QSpinBox子类化一例(进制可变的SpinBox)
目的:创建一个进制可设置的spinbox。类定义子类化 QSpinBox 的关键就是实现下面的四个虚函数:fixup()validate()textFromValue()valueFromText()除此之外,我们要设置采用的进制,所以添加一对函数base()setBase()创建一个 private 的对象,存放私有变量最终定义如下:
2013-10-14 14:37:55 1118
转载 Qt namespace Ui
http://blogold.chinaunix.net/u3/95560/showart_1946558.html接下来谈谈namespace Ui { class Dialog: public Ui_Dialog {}; }/****
2013-10-14 14:13:58 614
webrtc AEC(回声消除模块)的完整编译工程(vs2010)
2013-11-07
新浪微博客户端源码
2012-07-18
android笔记
2012-07-18
android学习笔记
2012-07-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人