<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      WIN32 窗口類封裝 框架實現(xiàn)部分

      上面已經(jīng)講了窗口封裝部分,內(nèi)容可點擊:http://www.rzrgm.cn/mengdejun/p/4010320.html,下面分享框架部分內(nèi)容,完成WINDOWS消息迭代

      CQFrameWnd.h 框架部分定義

      // MainFrameWnd.h: interface for the CMainFrameWnd class.
      //
      //////////////////////////////////////////////////////////////////////
      
      #if !defined(AFX_MAINFRAMEWND_H__F8E32324_0D71_4EEA_9B91_76CA47D6423F__INCLUDED_)
      #define AFX_MAINFRAMEWND_H__F8E32324_0D71_4EEA_9B91_76CA47D6423F__INCLUDED_
      
      #if _MSC_VER > 1000
      #pragma once
      #endif // _MSC_VER > 1000
      
      #include "QWnd.h"
      #include "qbutton.h"
      
      class CQFrameWnd : public CQWnd{
          QWND_DECLARE_MESSAGE_MAP(CQFrameWnd)
      public:
          CQFrameWnd();
          virtual ~CQFrameWnd();
          BOOL OnLButtonDown(UINT uMsg,WPARAM wParam,LPARAM lParam);
          BOOL OnRButtonDown(UINT uMsg,WPARAM wParam,LPARAM lParam);
          virtual HRESULT OnCreate(UINT uMsg,WPARAM wParam, LPARAM lParam);
          virtual HRESULT OnNcCreate(UINT uMsg,WPARAM wParam, LPARAM lParam);
      public:
          CQButton m_btn;
      };
      
      #endif // !defined(AFX_MAINFRAMEWND_H__F8E32324_0D71_4EEA_9B91_76CA47D6423F__INCLUDED_)

      CQFrameWnd.cpp 框架部分實現(xiàn)

      // QWApp.cpp: implementation of the CQWApp class.
      //
      //////////////////////////////////////////////////////////////////////
      
      #include "stdafx.h"
      #include "QWApp.h"
      
      //////////////////////////////////////////////////////////////////////
      // Construction/Destruction
      //////////////////////////////////////////////////////////////////////
      
      CQWApp::CQWApp()
      {
      
      }
      
      CQWApp::~CQWApp()
      {
      
      }
      
      BOOL CQWApp::InitInstance()
      {
          return TRUE;
      }
      
      BOOL CQWApp::ExitInstance()
      {
          return TRUE;
      }
      
      BOOL CQWApp::Run(){
          MSG msg;
          while(GetMessage(&msg,NULL,0,0)){ 
              //從消息隊列中取得消息
              TranslateMessage(&msg);
              //檢索并生成字符消息WM_CHAR
              DispatchMessage(&msg);
              //將消息發(fā)送給相應的窗口函數(shù)
          }
          return TRUE;
      }

       實現(xiàn)及其調(diào)用過程

      // HelloApp.h: interface for the CHelloApp class.
      //
      //////////////////////////////////////////////////////////////////////
      
      #if !defined(AFX_HELLOAPP_H__53E2DA06_2C68_41AD_AF58_3A9111E27DB7__INCLUDED_)
      #define AFX_HELLOAPP_H__53E2DA06_2C68_41AD_AF58_3A9111E27DB7__INCLUDED_
      
      #if _MSC_VER > 1000
      #pragma once
      #endif // _MSC_VER > 1000
      
      #include "QWApp.h"
      
      class CHelloApp : public CQWApp  
      {
      public:
          CHelloApp();
          virtual ~CHelloApp();
          virtual BOOL ExitInstance();
          virtual BOOL InitInstance();
      
      };
      #endif // !defined(AFX_HELLOAPP_H__53E2DA06_2C68_41AD_AF58_3A9111E27DB7__INCLUDED_)

       

      // HelloApp.cpp: implementation of the CHelloApp class.
      //
      //////////////////////////////////////////////////////////////////////
      
      #include "stdafx.h"
      #include "HelloApp.h"
      #include "QFrameWnd.h"
      //////////////////////////////////////////////////////////////////////
      // Construction/Destruction
      //////////////////////////////////////////////////////////////////////
      
      CHelloApp::CHelloApp(){
      }
      
      CHelloApp::~CHelloApp(){
      }
      
      
      BOOL CHelloApp::ExitInstance(){
          if(m_pMainWnd)
              delete m_pMainWnd;
          return TRUE;
      }
      
      BOOL CHelloApp::InitInstance(){
          CQFrameWnd* pW=new CQFrameWnd;
          if(pW->CreateEx(0,TEXT("test c++ frame"),TEXT("Visual Keyboard"),WS_OVERLAPPEDWINDOW|WS_VISIBLE,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,(HINSTANCE)GetModuleHandle(NULL))){
              m_pMainWnd=(LPVOID)pW;
              pW->UpdateWindow();
              pW->ShowWindow(SW_SHOWNORMAL);
              return TRUE;
          }
          return FALSE;
      }

       

      #include "stdafx.h"
      #include "HelloApp.h"
      int APIENTRY WinMain(HINSTANCE hInstance,
                           HINSTANCE hPrevInstance,
                           LPSTR     lpCmdLine,
                           int       nCmdShow)
      {
          CHelloApp app;
          if(app.InitInstance()){
              app.Run();
              app.ExitInstance();
          }
          return 0;
      }

      windows開發(fā)框架

      動態(tài)鏈接庫版本:https://files.cnblogs.com/mengdejun/wd.zip

      1.0.0.3修復版本:https://files.cnblogs.com/mengdejun/wd.fix.zip

      posted @ 2014-10-09 13:21  小孟文摘  閱讀(816)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产成人亚洲日韩欧美| 亚洲欧美电影在线一区二区| 国产成人A在线视频免费| 婷婷丁香五月亚洲中文字幕| 国产精品爽爽va在线观看网站| 奇米四色7777中文字幕| www欧美在线观看| 人妻久久久一区二区三区| 亚洲欧美一区二区成人片| 久热这里有精品视频在线| 阆中市| 亚洲中文字幕一区二区| 男女激情一区二区三区| 久章草在线毛片视频播放 | 国产日韩一区二区在线看| 国产精品久久中文字幕| 亚洲 制服 丝袜 无码| 久热这里只国产精品视频| 亚洲中文字幕无码专区| 暖暖 免费 高清 日本 在线观看5 色老头亚洲成人免费影院 | 苍井空毛片精品久久久| 蜜桃臀无码AV在线观看| 国产av日韩精品一区二区| 99RE6在线观看国产精品| 国产精品白浆免费视频| 成人片黄网站色大片免费| 国产伦视频一区二区三区| 成年女人喷潮免费视频| 亚洲最大日韩精品一区| 国产精品va在线观看无码不卡| 偷柏自拍亚洲综合在线| 亚洲国产精品综合久久2007| 亚洲成av人在线播放无码| 无遮无挡爽爽免费视频| 116美女极品a级毛片| 好吊妞| 免费人成视频x8x8国产| 国产精品大全中文字幕| 国产精品视频一区二区不卡| 影音先锋人妻啪啪av资源网站| 四虎精品国产精品亚洲精|