关闭

C++开源界面库

刚开始用C++做界面的时候,根本不知道怎么用简陋的MFC控件做出比较美观的界面,后来就开始逐渐接触到BCG  Xtreme ToolkitPro v15.0.1,Skin++,等界面库,以及一些网友自己写的界面库,开始对于C++软件界面美化有了一点点的心得。不敢藏私,希望和一些新手朋友们分享交流。     一.  开源C++界面库    1.RingSdk     Ringsdk是CS...
阅读(290) 评论(0)

Qt中指针异常问题解决

构建时,报如下错误: error: Exception at 0x7ff8593d4ab0, code: 0x80000002: datatypemisalignment, flags=0x1 (execution cannot be continued) (first chance) error: Exception at 0xcc974d, code: 0xc0000005: read a...
阅读(419) 评论(0)

从Qt4 迁移到Qt5 winEvent代替为nativeEvent

之前项目的代码从Qt4迁移到Qt5, 发现以前在Qt4中使用winEvent写的边缘拖动无法通过编译. 查了一下原来是在Qt5中已经移除winEvent, 并使用nativeEvent来代替. 那么在工程中只需要略加修改即可使用, 主要改两个地方: 1. 加入nativeEvent函数:    [cpp] view plaincopy ...
阅读(309) 评论(0)

Qt窗口大小设置

用Qt创建一个窗口,如何调整窗口的大小呢? 1.setBaseSize(),调用这个方法 1 setBaseSize( 800, 600 ); 运行程序,发现一点效果都没有。 注意我这里并没有使用setFixedSize setMaximumSize,因为虽然这些方法能够设置初始大小,但是之后就不能用鼠标调整窗口大小了。 2.用重载QSi...
阅读(1334) 评论(0)

Qt 之 setStyleSheet

Qt可以通过类似CSS的方式定制外观,在Qt里面命名为:xxx.qss Qss代码: 1.QmainWindow{    2.   background-image:url(:/new/image/images/test.png);   3.   background-origin:content;   4.   background-repeat:repeat;   5.}    ...
阅读(90) 评论(0)

QT使用插件QAxWidget

Pro文件中加入QT += axcontainer 头文件加: QAxWidget头文件在安装目录下(根目录请自选) D:\Qt\5.5.1\include\ActiveQt\QAxWidget #include...
阅读(413) 评论(0)

QT中的setGeometry参数

QT中的setGeometry (0, 0, 30, 35) 四个参数:          从屏幕上(0,0)位置开始(即为最左上角的点),显示一个30*35的界面(宽30,高35)。...
阅读(430) 评论(0)

Qt进程间调用.exe可执行文件

为什么需要进程间交互呢?Qt 虽然是一个很庞大的库,但是也不能面面俱到。每个需求都提供一种解决方案是不现实的。比如操作系统提供了查看当前文件夹下所有文件的命令(Windows 下是 dir, Linux 下是 ls),那么 Qt 就可以通过调用这个命令获取其中的信息。当然这不是一个很恰当的例子,因为 Qt 同样提供了相同的操作。这些操作都涉及到进程间交互。 进程间交互其实不过是与其他设备之间的数据...
阅读(148) 评论(0)

QtInternal 之 高效使用QString

QLatin1String:避免操作符 "==" 中隐含的 malloc: 从C字符串创建一个QString可能会涉及到malloc。举例来说,下面的代码可能会有一个隐式malloc调用的代价。   if(fruit == "apple") { ... } // possibly hidden malloc QString 为C字符串提供了重载的比较函数QString::operator==...
阅读(136) 评论(0)

QLatin1String类的学习

QLatin1String类对US-ASCII/Latin-1编码的字符串进行了封装。     许多QString的成员函数都用const char*代替QString作为参数实现重载。这包含拷贝构造函数,赋值操作,比较操作和其他不同的函数,比如insert(), replace(), indexOf(). 这些函数都做了优化以避免在函数调用时从const char*中构造一个QStri...
阅读(96) 评论(0)

QProcess::readAll() 函数

QProcess::readAll() 函数可以读出程序输出内容。我们使用这个函数将所有的输出获取之后,由于它的返回结果是 QByteArray 类型,所以再转换成 QString 显示出来。另外注意一点,中文本 Windows 使用的是 GBK 编码,而 Qt 使用的是 Unicode 编码,因此需要做一下转换,否则是会出现乱码的。...
阅读(119) 评论(0)

VC++链接错误LNK2001总结

我们在 VC++开发时经常会遇到链接错误LNK2001,一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,如版本原因,模块依赖,库使用不当。如果不深入地学习和理解VC++,要想改正连接错误LNK2001非常困难。             常见的遇到的LNK2001错误的错误提示信息为:             unresolved   external   symbol   “s...
阅读(246) 评论(0)

Windows API函数SetWindowLong简析

函数原型1: LONG SetWindowLong(     HWND hWnd,               //handle to window     int nlndex,              //offset of value to set     LONG dwNewLong           // new value ); hWnd:    窗口句柄及间接给...
阅读(221) 评论(0)

C++工厂模式详解——设计模式(2)

简单工厂模式是工厂模式中最简单的一种,他可以用比较简单的方式隐藏创建对象的细节,一般只需要告诉工厂类所需要的类型,工厂类就会返回需要的产品类,但客户端看到的只是产品的抽象对象,无需关心到底是返回了哪个子类。客户端唯一需要知道的具体子类就是工厂子类。除了这点,基本是达到了依赖倒转原则的要求。         假如,我们不用工厂类,只用CreateOperate和它的子类,那客户端每次使用不同的子类...
阅读(121) 评论(0)

简析C++序列化

1.什么是程序的序列化?        我们编写应用程序的时候往往需要将程序的某些数据存储在内存中,然后将其写入某个文件或是将它传输到网络中的另一台计算机上以实现通讯。这个将程序数据转化成能被存储并传输的格式的过程被称为“序列化”(Serialization),而它的逆过程则可被称为“反序列化”(Deserialization)。        C++程序的序列化就是将对象的状态信息转换为可以...
阅读(459) 评论(0)
77条 共6页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:38475次
    • 积分:1111
    • 等级:
    • 排名:千里之外
    • 原创:70篇
    • 转载:7篇
    • 译文:0篇
    • 评论:2条
    博客专栏