none
求教:关于是定义画笔问题 RRS feed

  • 问题

  •    我在windows  API   的学习中,看了一个例题,这个例题是这样的:在一个窗口内画一条蓝的任意曲线之后,再画一条红的任意曲线,之后再画的话会被PatBlt函数操作客户区,还是一条蓝线和一条红线,就这样循环交替.
      看了这个例题之后,我就不看书,自已来试着编了这个程序,在消息处理函数中,我定义了画笔,  HPEN  hBluePen;
      程序编好之后我便进行运行,一条蓝线,一条红线,连续画了三十秒钟,窗口出现了意想不到的情况,啊哟!想不出来到底是怎么回事,就看了下例题 ,原来这个  hBluePen 是声名为静态型的,static HPEN hBluePen;
    static静态型意味着,退出函数之时某个变量的值,再次进入这个函数时,变量值还是退出之时的值,不会重新分配空间,对画笔选入设备环境,选出设备环境,我本人认为是随着循环而循环,是不是hBluePen=CreatePen(***)造成的问题。
        恳求多多指教!
    2009年6月11日 12:42

答案