您的位置:程序门 -> vc/mfc -> 界面



关于窗口重画的问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于窗口重画的问题
发表于:2007-05-14 12:11:44 楼主
我现在在做一个游戏,在菜单里有个重新开始菜单,按下这个菜单后要让游戏回到刚开始的初始状态,我是这样写的:
               case       wm_command:              
                                           
            switch   (loword   (wparam))
               
                                                    {
               
                                         postmessage   (hwnd,   wm_paint,   0,   0)   ;
             
               
                                                                                  return   0;
                 }


其中wm_paint消息处理函数如下:
              case   wm_paint:

      renderscene();

      swapbuffers(hdc);

      validaterect(hwnd,null);
       break;


可是当按下了重新开始菜单后没反应,不知道是为什么
发表于:2007-05-29 08:41:451楼 得分:0
跟躥調試自己才知道是為什麽!設幾個斷點看看程式有象你想象的那樣運行嗎?
发表于:2007-05-29 17:55:552楼 得分:0
第一:刷新界面不是发送wm_paint消息,wm_paint消息是由系统发往应用程序的;应用程序调用invalidate就可以刷新界面;
第二:游戏的初始化应该不会是简单的刷新界面这样子吧,难道你玩游戏过程中都不考虑界面刷新的?比如切换一下程序,游戏就重新开始了?所以更多的是游戏数据的初始化。
发表于:2007-05-29 23:31:073楼 得分:0
要重新开始,处理两个内容:界面窗口数据的初始化和游戏数据的初始化
发表于:2007-05-29 23:36:434楼 得分:0
相当于重新打开一个新的游戏,呵呵……
发表于:2007-06-02 09:20:265楼 得分:0
要重新开始,界面窗口数据的初始化和游戏数据的初始化,wm_paint是系统的消息,窗口状态改变的时候调用


快速检索

最新资讯
热门点击