02 2014 档案
摘要:利用PreTranslateMessage,响应按钮控件的按下(WM_LBUTTONDOWN)和松开(WM_LBUTTONUP)VC的button控制只有两个事件,一个是单击事件,一个事双击事件。在这个方面VB就方便多了。但是我们有其他办法解决。首先我们先学一些基础知识。1...关于PreTranslateMessagePreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某些消息时,常常要在这里添加代码.2...关于MSG结构体typedef struct tagMSG { //
阅读全文
摘要:在计算机程序中,数据的位是可以操作的最小数据单位,理论上可以用“位运算”来完成所有的运算和操作。 一般的位操作是用来控制硬件的,或者做数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效率。C语言提供了位运算的功能,这使得C语言也能像汇编语言一样用来编写系统程序。 位运算符C语言提供了六种位运算符: &按位与 |按位或 ^按位异或 ~取反 >右移 1.按位与运算按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。参与运算的数以补码方式出现。 例如:9&5可写算式如
阅读全文
摘要:int a|=(1> (pos)&1)) //用宏得到某数的某位#define BitGet(Number,pos) ((Number) |= 1<<(pos)) //把某位置1#define BitGet(Number,pos) ((Number) &= ~(1<<(pos)) //把某位置0#define BitGet(Number,pos) ((Number) ^= 1<<(pos)) //把Number的POS位取反典型操作有:WTCON |= (1 << 5) //WTCON的第五位清1 WTCON &=
阅读全文
摘要:m_Grid.SetCellType(index,1,CGridCtrl::CellType_Check);//设置第index行、第一列的单元格为类似CheckBox的模样m_Grid.SetCellType(index, 1, CGridCtrl::CellType_Check); //设置第index行、第一列的单元格为类似CheckBox的模样OnGridCheckEdit(NMHDR*pNMHDR,LRESULT*pResult){*pResult=0;NM_GRIDVIEW*pItem=(NM_GRIDVIEW*)pNMHDR;if(!m_Grid.IsValid(pItem-..
阅读全文
摘要:1.在初始化数组尤其是需要每次都初始化的时候,很多同学使用循环来进行,这样不但速度慢,而且写起来也很长。所以现在提供一个函数来实现这个功能。。。原型:extern void *memset(void *buffer, int c, int count);功能:把buffer所指内存区域的前count个字节设置成字符c。包含头文件:注意这个函数是字符串函数,所以一定要包含字符串头文件。使用方法:int a[50];memset(a,0,sizeof(a));这样呢,就将数组a内所有的值都赋成0了,sizeof也是一个函数,得到数组a的字节大小。另外需要注意的是,memset函数是逐字节进行填充,
阅读全文
摘要:IE8 与 VS2005 冲突问题解决方法问题表现为:MFC类向导添加类时,出现“当前页面的脚本发生错误”,进入MFC类向导后上方有一个小黄条“此网站的某个加载项运行失败。请检查"Internet选项"中的安全设置是否存在潜在冲突”,基类下拉框无项值,无法成功添加MFC类。针对这一问题解决办法是:添加一注册表项:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/Zones如果不存在1000这一项的话,首先添加;在此项(1000)中添加一个DWORD值名称为1207,类型
阅读全文

浙公网安备 33010602011771号