- 博客(50)
- 资源 (13)
- 收藏
- 关注
原创 UTF-8文件的Unicode签名BOM(Byte Order Mark)
近日在调测一个UTF8编码的中文Zen Cart网站时遇到一件怪事,网页显示文字正常,用ie的察看源文件(记事本打开)却发现乱码,firefox没有这个问题。经在网上多方查证和多次测 试,解决了这个问题,其实是UTF-8文件的Unicode签名BOM(Byte Order Mark)问题。BOM(Byte Order Mark),是UTF编码方案里用于标识编码的标准标记,在UTF-16里本
2014-05-31 22:27:53 1840
原创 QWidgetAction的用法
QWidgetAction派生自QAction,由于QAction一直是作为一个Item在使用,在定制性上比较弱,所以QT从QAction派生了一个QWidgetAction类来解决action的可定制功能。通过QWidgetAction可以根据我们的需要定制任意的Action组件。
2014-05-30 15:16:39 6067
原创 QT表单样式规则
1.全局匹配: *,匹配所有的Widgets2.类型匹配:QPushButton、QComboBox等,匹配该类的示例及其子类3.属性匹配:通过属性来作为过滤选项,对指定的属性(可以是动态属性,例如QObject的setProperty接口),例如 QLineEdit[readOnly="true"] 对于QLineEdit只读的控件来自定义表单样式。也可以使用~=符号来对属性进行
2014-05-29 17:43:26 1306
原创 QT在英文系统下乱码问题
我的QT环境:源代码的字符集:gb18030QT的项目文件pro的字符集:CODECFORTR = GB18030在英文系统上显示乱码原因:英文系统上如果要显示中文,可以通过加载QTplugins下的插件来进行解码,所以要想在英文系统上正确显示中文就只能是通过unicode编码了, 解决方案:1.我采用的是utf8编码,我没有修改源代码的字符集,而是将所以由tr()
2014-05-27 17:29:35 2214
原创 qtcreator源文件提取函数和类
下载qtcreator的源代码编译cplusplus、utils、languageUtils这三个项目,使用
2014-05-26 20:42:43 1229
原创 QT透明
通过如下代码可实现透明效果setWindowFlags(Qt::FramelessWindowHint);setAttribute(Qt::WA_TranslucentBackground);
2014-05-22 23:37:02 621
转载 QT实现不规则窗体和透明窗体
不规则窗体的实现有两种方式:一种是设置窗体的掩码图像;另一种是设置窗体背景透明,然后重写其绘图函数,将背景图绘制上去。 第一种方式:首先要准备两张图像,一张是要显示的图像,另一张是第一张图的掩码图像,黑色部分是你的窗体要显示的部分,如图: 具体实现的关键代码如下://IrregularForm1.hIrregularF
2014-05-22 22:13:47 783
转载 win7 64位 [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认
用java程序直接连接access数据库,不通过配置odbc数据源,winxp下运行正常,但部署到win7 64位操作系统后出现[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认,解决方法:64位下载地址http://download.microsoft.com/download/E/4/2/E4220252-5FAE-4F0A-B1B9-0B48B
2014-05-21 10:51:22 5146
原创 qtclucene全文检索
用QT也已经三四年了,今天从QT的tools中看到qtclucene,原来这个就是从clucene移植过来的一个全文检索工具,用在QTHelp中。下面是clucene的说明:CLucene是Lucene的一个C++移植,Lucene是一个基于java的高性能的全文搜索引擎。CLucene因为使用C++编写,所以理论上要比lucene快。[1]Lucene不是一个完整的全文索
2014-05-19 14:33:57 2199 1
原创 vs2012编译xapian问题2 ------U1077,返回代码0x2
先看错误信息 cl.exe -showIncludes -nologo -c -Zi -wd4005 -I.. -I..\include -I..\common -I..\win32 -W3 -EHsc -DWIN32 -D__WIN32__ -D_WIN32 -D_WINDOWS -D "HAVE_VSNPRINTF" -D "HAVE_STRDUP" -D "_U
2014-05-18 16:30:53 3495
转载 mem_fun找不到
当我用VS2012打开低版本的HM6.0时,主要通过build文件中的HM_vc9.sln升级完成,而重新编译的过程中总会提示“error C3861: “mem_fun”: 找不到标识符”。错误发生的位置为: AccessUnit::iterator it = find_if(accessUnit.begin(), accessUnit.end(), mem_fun(&NALUnit::
2014-05-18 16:27:06 1132
原创 xapian编译问题U1077,返回代码0x2
先把错误贴出来给大家看看 cl.exe -showIncludes -nologo -c -Zi -I.. -I..\include -I..\common -I..\win32 -W3 -EHsc -DWIN32 -D__WIN32__ -D_WIN32 -D_WINDOWS -D "HAVE_VSNPRINTF" -D"HAVE_STRDUP" -D "_USE_32
2014-05-18 16:07:31 2064
原创 xapian编译全过程
README for Xapian/Visual C++ Tools==================================2011-06-23 for Xapian 1.2.6 Make files, some extra headers and associated tools for compiling Xapian onWin32 using the Microsof
2014-05-18 15:49:48 2722
转载 xapian编译问题
这几日想研究下doxygen,发现其include了xapian.h,一败毒发现是个字符串查找库,正好字符串查找也是研究重点之一,下了份xapian 1.2.8准备编译。结果出现NMAKE : fatal error U1073: 不知道如何生成“"pian\xapian-core-1.2.8\config.h"”Stop.NMAKE : fatal error U10
2014-05-18 15:47:41 1366
转载 zlib编译
vs2008编译zlib库32位及64位 这里以1.2.5为例,当前最新的版本1.2.7,方法应该都是通用的。32位版本 1、下载并解压缩zlib-1.2.5.tar.gz官网http://www.zlib.org(最近打不开),所以我上传了一份在资源,下载地址:http://download.csdn.net/detail/shellching/4689279
2014-05-18 12:29:28 928
转载 Xapian开源搜索引擎
Xapian与开源Xapian的官方网站是http://www.xapian.org,这是一个非常优秀的开源搜索引擎项目,搜索引擎其实只是一个通俗的说法,正式的说法其实是IR(Information Retrieval)系统。Xapian的License是GPL,这意味着允许使用者自由地修改其源码并发布之。Xapian的中文资料非常少,可以说现在互联网上连一篇完整详细的Xapian中文介绍文档
2014-05-18 11:26:29 1251
原创 用vs2012编译doxygen-1.8.7
1.下载bison,地址见上篇文件,我用的是2.4.1-setup.exe2.下载flex,地址见上篇文件,我用的是flex-2.5.4a-1.exe3.下载python,我用的是2.7版本4.将前面三个软件安装后,将其安装后目录下的bin都添加到系统给的path路径中,将python的根目录增加到系统的path目录5.使用vs2012打开doxgen的源代码,目录下有个winbu
2014-05-18 11:23:54 1592
转载 QT动态翻译
QT实现动态翻译和语言切换 QT GUI提供语言动态转换机制并辅以相应的工具方便programmer实现界面的多语言实时动态切换功能。实现语言动态切换的方法:一个注意+五个步骤。 一个注意: 实现QT工程的语言切换功能的一个关键点是所有的字符串都需要tr修饰符。例如: m_action_redo->setTex
2014-05-14 17:22:25 1710
原创 模板参数tag的用法
//通过结构体/类的类型来作为模板参数的tag,//用来区分tag之间的区别。//made by davidsu33//例如对于某个全局的静态变量,你如果希望有//很多份,但是其实现又是一样的,你可以考虑//以模板的形式,通过类tag来区分//而且还可以根据实际需要来特化模板#include "stdafx.h"#include #include using nam
2014-05-14 11:05:53 1357
转载 判断操作系统是否为x64的方法
如何判断当前操作系统是否为x64?百度了一下,几乎全是这个答案[cpp] view plaincopyBOOL IsWow64() { typedef BOOL(WINAPI *ISWOW64PROCESS)(HANDLE, PBOOL); ISWOW64PROCESS fnIsWow64Process;
2014-05-14 09:49:13 1000
原创 遵照std::allocator实现自定制的内存分配器
下面是标准库STL中allocator的实现templateclass allocator: public _Allocator_base{ // generic allocator for objects of class _Typublic:typedef allocator other;typedef _Allocator_base _Mybase;t
2014-05-13 22:50:15 3073
原创 解决微软面试题
// grammer.cpp : 定义控制台应用程序的入口点。//made by davidsu33//第12题(语法)微软面试题//题目:求1+2+…+n,//要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。#include "stdafx.h"#include #include #include usin
2014-05-13 10:25:20 673
原创 将宏定义写得更像函数
今天看到这样一个宏定义#define rb_set_black(r) do { (r)->color = BLACK; } while (0)
2014-05-13 08:25:22 572
转载 enable_shared_from_this用法
shared_from_this()是enable_shared_from_this的成员 函数,返回shared_ptr。首先需要注意的是,这个函数仅在shared_ptr的构造函数被调用之后才能使 用。原因是enable_shared_from_this::weak_ptr并不在构造函数中设置,而是在shared_ptr的 构造函数中设置。 如下代码是错误的:cla
2014-05-12 21:49:17 1675
原创 boost的posix_time用法详解01
// boost_time.cpp : 定义控制台应用程序的入口点。//made by davidsu33//2014-5-11//the usage of posix_time#include "stdafx.h"#include #include #include using namespace std;#define SHOW_VARIABLE(x)\{\ cou
2014-05-11 19:12:35 12261
原创 boost日期用法
// boost2.cpp : 定义控制台应用程序的入口点。//boost gregorian_date usage//made by davidsu33 2014-5-10#include "stdafx.h"#include #include #include #include #include using namespace std
2014-05-10 22:37:00 1993
原创 常用算法-快速排序
快速排序的原理,设置一个键值,作为比较的当前值,然后找到该值自己所在的位置,这种排序方法,如果键值不同,其排序时间也会存在一定差异,最理想的就是pos值是该排序段范围的中间值,这样可以在算法上缩短排序时间,快速排序从算法上要优于冒泡排序。最近看到网上的快速排序算法有的是错的,就连百度百科上写的也是错误的代码,wiki百科上的还是比较靠谱。鉴于此,我自己重新写了一下,不容易理解的地方我增加了注释。见
2014-05-09 16:09:02 711
转载 STL输入输出流迭代
STL定义了供输入及输出的iostream iterator类,称为 istream_iterator和ostream_iterator,分别支持单一型别的元素的读取和写入。 使用方法: 1.包含头文件: #include using namespace std; 2.像使用其他iterator一样使用istream_iterator和 ostream_iterator
2014-05-09 14:08:31 683
转载 windows创建快捷方式和快捷网站链接
#include "shobjidl.h"#include "shlobj.h"HRESULT CreateLink(LPCSTR lpszPathObj, LPCSTR lpszPathLink, LPCSTR lpszDesc) { HRESULT hres; IShellLink* psl; // Get a pointer to th
2014-05-08 15:12:00 859
原创 c语言来实现c++
闲来没事,看了看sqlite的源码,突然想用c实现c++,写了如下demo#include #include struct Class;typedef struct Class _Class;struct IMethod{ void (*ctor)(_Class *c); void (*dtor)(_Class *c); int (*sum)(_Class* c); in
2014-05-08 11:10:20 1107
原创 boost的timer和datetime
boost的timer采用的是跨平台的clock,系统始终来实现的,可以控制精确度,windows平台的精度为100
2014-05-08 09:36:26 674
android自动短信发送源码
2013-04-26
独立的键盘钩子,用来hook键盘的一个小程序,很值得看看
2009-12-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人