友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
第三电子书 返回本书目录 加入书签 我的书架 我的书签 TXT全本下载 『收藏到我的浏览器』

深入浅出MFC第2版(PDF格式)-第67部分

快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!


                   #0042  void CMyFrameWnd::OnPaint() 

                   #0043  { 

                   #0044  CPaintDC dc(this); 



356 


…………………………………………………………Page 419……………………………………………………………

                                                             第6章    MFC 程式的生死因果 



         #0045  CRect rect; 

         #0046 

         #0047     GetClientRect(rect); 

         #0048 

         #0049     dc。SetTextAlign(TA_BOTTOM | TA_CENTER); 

         #0050 

         #0051     ::LineDDA(rect。right/2; 0; rect。right/2; rect。bottom/2; 

         #0052         (LINEDDAPROC) LineDDACallback; (LPARAM) (LPVOID) &dc); 

         #0053  } 

         #0054  //……………………………………………………………………………………………………………………………………………………………………

         #0055  VOID CALLBACK CMyFrameWnd::LineDDACallback(int x; int y; LPARAM lpdc) 

         #0056  { 

         #0057  static char szText'' = 〃Hello; MFC〃; 

         #0058 

         #0059     ((CDC*)lpdc)…》TextOut(x; y; szText; sizeof(szText)…1); 

         #0060     for(int i=1; im_pMainWnd) 

    CWnd* m_pActiveWnd;   // active main window (may not be m_pMainWnd) 



    // only valid while running 

    HANDLE m_hThread;       // this thread's HANDLE 

    DWORD m_nThreadID;      // this thread's ID 



    int GetThreadPriority(); 

    BOOL SetThreadPriority(int nPriority); 



// Operations 

    DWORD SuspendThread(); 

    DWORD ResumeThread(); 



// Overridables 

    // thread initialization 

    virtual BOOL InitInstance(); 



    // running and idle processing 

    virtual int Run(); 

    virtual BOOL PreTranslateMessage(MSG* pMsg); 

    virtual BOOL PumpMessage();     // low level message pump 

    virtual BOOL OnIdle(LONG lCount); // return TRUE if more idle processing 



public: 

    // valid after construction 

    AFX_THREADPROC m_pfnThreadProc; 

。。。 

}; 



熟悉Win32  的朋友,看到CWinThread 类别之中的SuspendThread 和ResumeThread 成 



员函数,可能会发出会心微笑。 



                                                                                  361 


…………………………………………………………Page 424……………………………………………………………

                    第篇    湷觥 FC  程式設計 



             CFrameWnd -取代 WndProc 的地位 



                    CFrameWnd 主要用来掌握一个窗口,几乎你可以说它是用来取代SDK 程序中的窗口函 



                    式的地位。传统的SDK 窗口函数写法是: 



                    long FAR PASCAL WndProc(HWND hWnd; UNIT msg; WORD wParam; LONG lParam) 

                    { 

                       switch(msg) { 

                           case WM_MAND : 

                                switch(wParam) { 

                                    case IDM_ABOUT : 

                                         OnAbout(hWnd; wParam; lParam); 

                                         break; 

                                } 

                                break; 

                           case WM_PAINT : 

                              
返回目录 上一页 下一页 回到顶部 0 0
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!