
MFC
文章平均质量分 79
pepehai
这个作者很懒,什么都没留下…
展开
-
LPSTR、LPCSTR、LPTSTR和LPCTSTR的意义及区别
1、ANSI(即MBCS):为多字节字符集,它是不定长表示世界文字的编码方式。ANSI表示英文字母时就和ASCII一样,但表示其他文字时就需要用多字节。2、Unicode:用两个字节表示一个字符的编码方式。比如字符A在ASCII下面用一个字节表示,而在Unicode下面用两个字节表示,其中高字节用“0”填充;函数程在ASCII下面用两个字节表示,而在Unicode下面转载 2010-03-05 15:02:00 · 349 阅读 · 0 评论 -
vc断言的应用
一、关于断言 所谓的断言就是可以肯定为正确的一个陈述语句。 假设某个函数需要一个指向文档对象的指针作为参数,但却错误地使用了一个视图指针来调用该函数。如果函数继续使用该错误地址,轻则程序运行得不到正确的结果,重则破坏视图数据。由于这种错误往往要到使用视图数据时才会发现,因而要找出导致错误的根本原因就要付出相当大的代价了。 只要在函数开始部分加入断言检查,检验指针是否真转载 2010-03-09 09:58:00 · 413 阅读 · 0 评论 -
UpdateData、Invalidate、InvalidateRect和UpdateWindow及RedrawWindow
UpdateData、Invalidate、InvalidateRect和UpdateWindow及RedrawWindowInvalidate和UpdateWindow的区别按引:Invalidate在消息队列中加入一条WM_PAINT消息,其无效区为整个客户区。而UpdateWindow直接发送一个WM_PAINT消息,其无效区范围就是消息队列中WM_PAINT消息(最多只有一条)的无效区。效果很明显,调用Invalidate之后,屏幕不一定马上更新,因为WM_PAINT消息不一定在队列头部,而调用Up转载 2010-06-21 12:01:00 · 845 阅读 · 0 评论 -
如何实现控件随对话框大小变化而自动调整大小和位置
<br /><br />1. 处理对话框的WM_SIZE,然后用MoveWindow或者SetWindowPos来把对话框上面的控件重新调整新位置和大小。<br />2. 基本的做法就是响应WM_SIZE消息,并按照窗口大小比例来调整控件的位置和大小,控件的大小最好设置成窗口的百分之几,这样的话,就可以根据窗口的大小随时调整了。<br />3. 每次OnSize 即可获得一个CRect,然后根据这个CRect来确定这些控件的位置和大小,使用函数MoveWindow 或SetWindowpos实现。<br /转载 2010-06-21 12:11:00 · 1546 阅读 · 0 评论