一、BSTR、LPSTR和LPWSTR
那么什么是BSTR、LPSTR以及LPWSTR呢?
BSTR(Basic
LPSTR和LPWSTR是Win32和VC++所使用的一种字符串数据类型。LPSTR被
我的一些观点。
1、显示的图形为什么会闪烁?
我们的绘图过程大多放在OnDraw或者OnPaint函数中,OnDraw在进行屏幕显示时是由OnPaint进行调用的。当窗口由于任何原因需要重绘时,总是先用背景色将显示区清除,然后才调用OnPaint,而背景色往往与绘图内容反差很大,这样在短时间内背景色与显示图形的交替出现,使得显示窗口看起来在闪。如果将背景刷设置成NULL,这样无论怎样重绘图形都不会闪了。
当然,这样做会使得窗口的显示乱成一团,因为重绘时没有背景色对原来绘制的图形进行清除,而又叠加上了新的图形。
有的人会说,闪烁是因为绘图的速度太慢或者显示的图形太复杂造成的,
|
画笔是用来绘制各种直线和曲线的一种图形工具,GDI+的Pen类为画笔提供了丰富的方法。一般来说,我们可以通过其构造函数来指定画笔的颜色和宽度,其定义如下:
Pen( 其中,color是用来指定画笔颜色,width用来指定画笔宽度。REAL是一个float类型定义,而Color是GDI+的一个颜色类,它既可以指定一个ARGB颜色类型,也可以使用GDI+预定义的颜色值,甚至可以将COLORREF转换成Color类型的颜色。例如,下面的代码都是创建一个宽度为3,颜色为蓝色的画笔:
|
| 分类:编程技术 |
| 分类:编程技术 |
本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者。读者最好具有以下VC基础:
1.
2.
3.
本文根据笔者多年的开发经验,并结合简单的例子一一展开,希望对读者有所帮助。
树形控件TreeCtrl和下节要讲的列表控件 ListCtrl在系统中大量被使用,例如Windows资源管理器就是一个典型的例子。
树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用
BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd,
UINT nID );创建一个窗口,dwStyle中可以使用以下一些树形控件的专用风格:
| 分类:编程技术 |
在MFC里面,Pretranslatemessage是一个很重要的虚函数。这个函数的作用这里就不谈了,很多地方都有涉及,这里只谈一下其实现的机制。
谈到PretranslateMessage的实现,便不得不谈到MFC消息循环的实现。MFC通过CWinApp类中的Pumpmessage
| 分类:精彩文章 |
重要角色
我邻居家的孩子一直在央求他的妈妈给他买新衣服,上衣是白衬衫,下面是黑色的短裤。
他的妈妈说:“老师怎么会这样啊?”
我问:“怎么了?”
她说他们学校要搞拔河比赛,要求男孩儿一律要穿白衬衣黑短裤,但我的孩子不用啊,因为他长得瘦小,没有被选上参赛。她是不想买的。因为孩子有很多旧衣服,“我想这孩子虚荣心太强了,看见别人穿新衣服自己也要。”
| 分类:经验知识 |