摘要: 1、 通过CToolBarCtrl的成员函数EnableButton(), 代码如下:CToolBarCtrl& rCtrl = this->m_wndToolBar.GetToolBarCtrl();其中m_wndToolBar为工具栏(CToolBar类)对象 a) 一种是直接使用按钮ID调用EnableButton() rCtrl.EnableButton(ID_...., FALSE/TRUE); b) 另一种则是通过TBBUTTON结构体来获取按钮ID,使用到GetButton()函数,同为CToolBarCtrl成员。 TBBUTTON tBtn; rCtrl... 阅读全文
posted @ 2012-08-07 10:50 mywe 阅读(699) 评论(0) 推荐(0) 编辑
摘要: 1、HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPTSTR lpName ); 创建新的事件对象,返回其句柄lpEventAttributes: 构造体SECURITY_ATTRIBUTES的指针,表示新创建的事件对象的安全属性。如果为NULL时表示为默认安全属性。bManualReset:创建的事件对象是否为人工重置还是自动重置,true为人工重置;false为自动重置。bInitialState: true为事件对象的初... 阅读全文
posted @ 2012-05-29 21:10 mywe 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 相信大家都知道一个派生类继承于一个基类的时候有三种方式的访问控制,分别为:public、protected和private。例如: View Code class slider{public: void print () {cout<< "test!!" << endl;}};class B_slider:public slider{};class slider{public: void print () {cout<< "test!!" << endl;}};class B_slider:protecte 阅读全文
posted @ 2012-04-26 20:45 mywe 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 摘自《The C++ Programming Language》 Bjarne Stroustrup 要从一集重载的函数中找到应实际调用的那个正确版本,就需要找到在参数表达式的类型和函数的(形式)参数类型之间的最好匹配。则需要按顺序检查下面的一系列判断准则: 【1】准确匹配;也就是说,无须任何转换或者只须做平凡转换(例如,数组名到指针,函数名到函数指针,T到const T等)的匹配 【2】利用提升的匹配;即包括整数提升(bool到int, char到int,short到int以及它们的无符号版本)以及从float到double的提升。 【3】利用标准转换(例如,int到double... 阅读全文
posted @ 2012-04-15 20:26 mywe 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 在拜读Bjarne Stroustrup的《The C++ Programming Language》之前,一直理所当然的认为enum类型相当于一个const int[]。其实不然,enum类型并非只是一个类似于整形常量数组的东东。 区别在于:用户定义的每一个enum类型的取值范围并非表面上的几个常量,而是一个更大的闭区间,区间内包含用户所定义的整形值。例如enum Month {mar=3, dec=10},其取值范围为[0,31]。所以,Month(0)~Month(31)都是合法取值。 阅读全文
posted @ 2012-04-12 14:44 mywe 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 第一次进行文件目录树遍历实现过程中,使用到了WIN32_FIND_DATA这个结构。并通过其中的dwFileAttributes这个属性来判断一个目标为文件夹还是文档。其中目标为文档是dwFileAttributes的值为FILE_ATTRIBUTE_ARCHIVE(32),而为文件夹时值为FILE_ATTRIBUTE_DIRECTORY(16)。 此时我就是根据这两个值来作为区分文档和文件夹,于是理所当然的使用了"=="这个运算符号。 但是当程序运行起来的时候却发现有一些文件夹是会忽略掉的,并没有被当作文件夹处理。而且在Debug的时候通过跟踪dwFileAttribut 阅读全文
posted @ 2012-04-03 19:32 mywe 阅读(2697) 评论(0) 推荐(1) 编辑
摘要: 在VS2008中,单独使用“winnt.h”头文件时会出现奇奇怪怪的编译问题 1 #include <winnt.h>2 3 int main()4 {5 return 0;6 }对以上代码进行编译时会出现错误:1>c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(296) : error C2146: 语法错误 : 缺少“;”(在标识符“WCHAR”的前面)1>c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(296) : 阅读全文
posted @ 2012-04-01 16:07 mywe 阅读(3679) 评论(0) 推荐(1) 编辑