CWnd
html
CObject |
└CCmdTarget |
└CWnd |
CWnd類提供了微軟基礎類庫中全部窗口類的基本功能。
CWnd對象與Windows的窗口不一樣,可是二者有緊密聯繫。CWnd對象是由CWnd的構造函數和析構函數建立或銷燬的。另外一方面,Windows的窗口是Windows的一種內部數據結構,它是由CWnd的Create成員函數建立的,而由CWnd的虛擬析構函數銷燬。DestroyWindow函數銷燬Windows的窗口,可是不銷燬對象。
CWnd類和消息映射機制隱藏了WndProc函數。接收到的Windows通知消息經過消息映射被自動發送到適當的CWnd OnMessage成員函數。你能夠在派生類中重載OnMessage成員函數以處理成員的特定消息。
CWnd類同時還使你可以爲應用程序建立Windows的子窗口。先從CWnd繼承一個類,而後在派生類中加入成員變量以保存與你的應用程序有關的數據。在派生類中實現消息處理成員函數和消息映射,以指定當消息被髮送到窗口時應該如何動做。
你能夠通過兩個步驟來建立一個子窗口。首先,調用構造函數CWnd以建立一個CWnd對象,而後調用Create成員函數以建立子窗口並將它鏈接到CWnd對象。
當用戶關閉你的子窗口時,應銷燬CWnd對象,或者調用DestroyWindow成員函數以清除窗口並銷燬它的數據結構。
在微軟基礎類庫中,從CWnd派生了許多其它類以提供特定的窗口類型。這些類中有許多,包括CFrameWnd,CMDIFrameWnd,CMDIChildWnd,CView和CDialog,被用來進一步派生。從CWnd派生的控件類,如CButton,能夠被直接使用,也能夠被進一步派生出其它類來。
#include <afxwin.h>
請參閱:CFrameWnd, CView
CWnd類的成員web
數據成員安全
m_hWnd | 指明與這個CWnd對象相關聯的HWND句柄 |
構造和析構數據結構
CWnd | 構造一個CWnd對象 |
DestroyWindow | 銷燬相關聯的Windows窗口 |
Create | 建立並初始化與CWnd對象相關聯的子窗口 |
PreCreateWindow | 在與CWnd對象相關聯的窗口被建立以前調用 |
CalcWindowRect | 調用這個函數以計算窗口客戶區的矩形 |
GetStyle | 返回當前的窗口風格 |
GetExStyle | 返回窗口的擴展風格 |
Attach | 將Windows句柄與CWnd對象相鏈接 |
Detach | 將一個Windows句柄從CWnd對象上分離並返回這個句柄 |
PreSubclassWindow | 在調用SubclassWindow以前,容許其它必要的子類化工做 |
SubclassWindow | 將窗口與CWnd對象相鏈接,並使它經過CWnd的消息映射轉發消息 |
UnsubclassWindow | 將窗口與CWnd對象分離 |
FromHandle | 當給定一個窗口的句柄時,返回CWnd對象的指針。若是沒有CWnd對象與這個句柄相鏈接,則建立一個臨時的CWnd對象並與之相鏈接 |
FromHandlePermanent | 當給定一個窗口的句柄時,返回CWnd對象的指針。若是沒有CWnd 對象與這個句柄相鏈接,則返回NULL |
DeleteTempMap | CWinApp的空閒處理函數自動調用這個函數,清除由FromHandle建立的任何臨時CWnd對象 |
GetSafeHwnd | 返回m_hWnd,若是該指針爲NULL,則返回NULL |
CreateEx | 建立一個Windows的可重疊窗口、彈出窗口或子窗口,並把它鏈接到一個CWnd對象上 |
CreateControl | 建立一個OLE控件,該控件在MFC程序中由一個CWnd對象表明 |
IsWindowEnabled | 肯定一個窗口是否容許鼠標和鍵盤輸入 |
EnableWindow | 容許或禁止鼠標和鍵盤輸入 |
GetActiveWindow | 得到激活的窗口 |
SetActiveWindow | 激活窗口 |
GetCapture | 得到捕獲鼠標的CWnd |
SetCapture | 使隨後的鼠標輸入都被髮送到這個CWnd |
GetFocus | 得到當前具備輸入焦點的CWnd |
SetFocus | 要求輸入焦點 |
GetDesktopWindow | 得到Windows的桌面窗口 |
GetForegroundWindow | 返回前臺窗口的指針(頂層窗口,用戶正在其中工做) |
SetForegroundWindow | 使建立窗口的線程變爲前臺並激活窗口 |
GetIcon | 得到圖標的句柄 |
SetIcon | 設置指定圖標的句柄 |
GetWindowContextHelpId | 得到幫助上下文的標識符 |
SetWindowContextHelpId | 設置幫助上下文的標識符 |
ModifyStyle | 修改當前的窗口風格 |
ModifyStyleEx | 修改窗口的擴展風格 |
GetWindowPlacement | 得到窗口的顯示狀態以及正常(還原)的、最大化和最小化的位置 |
SetWindowPlacement | 設置窗口的顯示狀態以及正常(還原)的、最大化和最小化的位置 |
GetWindowRgn | 得到窗口的窗口區域的一個拷貝 |
SetWindowRgn | 設置窗口的區域 |
IsIconic | 肯定CWnd是否被最小化(圖標化) |
IsZoomed | 肯定CWnd是否被最大化 |
MoveWindow | 改變CWnd的位置和大小 |
SetWindowPos | 改變子窗口、彈出窗口和頂層窗口的大小、位置以及順序 |
ArrangeIconicWindows | 排列全部最小化(圖標化)的子窗口 |
BringWindowToTop | 使CWnd到達重疊窗口堆棧的頂部 |
GetWindowRect | 得到CWnd的屏幕座標 |
GetClientRect | 得到CWnd客戶區域的大小 |
ChildWindowFromPoint | 肯定哪一個子窗口包含指定的點,若是有的話 |
FindWindow | 返回由窗口名或窗口類標識的窗口的句柄 |
GetNextWindow | 返回窗口管理器列表中的下一個(或前一個)窗口 |
GetOwner | 得到CWnd的擁有者的指針 |
SetOwner | 改變CWnd的擁有者 |
GetTopWindow | 返回CWnd所屬的第一個子窗口 |
GetWindow | 返回與窗口有特定關係的窗口 |
GetLastActivePopup | 肯定CWnd擁有的彈出窗口是否最近被激活 |
IsChild | 指明CWnd是指定窗口的一個子窗口仍是其它子對象 |
GetParent | 得到CWnd的父窗口(若是有) |
GetSafeOwner | 得到給定窗口的安全擁有者 |
SetParent | 改變父窗口 |
WindowFromPoint | 標明包含給定點的窗口 |
GetDlgItem | 得到指定的對話框中具備指定ID的控件 |
GetDlgCtrlID | 若是CWnd是一個子窗口,則用這個函數來返回它的ID值 |
SetDlgCtrlID | 爲窗口(能夠是任意子窗口,不只是對話框中的控件)設置窗口ID或控件ID |
GetDescendantWindow | 搜索全部子窗口並返回具備指定ID的窗口 |
GetParentFrame | 得到CWnd對象的父框架窗口 |
SendMessageToDescendants | 將消息發送給窗口的全部子窗口 |
GetTopLevelParent | 得到窗口的頂層父窗口 |
GetTopLevelOwner | 得到頂層窗口 |
GetParentOwner | 返回子窗口的父窗口的指針 |
GetTopLevelFrame | 得到窗口的頂層框架窗口 |
UpdateDialogControls | 調用這個函數以更新對話框按鈕和其它控件的狀態 |
UpdateData | 初始化對話框或得到對話框中的數據 |
CenterWindow | 將窗口設置到父窗口的中央 |
BeginPaint | 爲繪圖準備CWnd |
EndPaint | 標誌着繪圖結束 |
在指定的設備環境中畫出當前窗口 | |
PrintClient | 在指定的設備環境(一般是打印機設備環境)中畫出任何窗口 |
LockWindowUpdate | 禁止或恢復在給定窗口中的繪圖 |
UnlockWindowUpdate | 解鎖用CWnd::LockWindowUpdate鎖定的窗口 |
GetDC | 得到客戶區的設備環境 |
GetDCEx | 得到客戶區的顯示設備環境,容許在繪圖的時候進行剪裁 |
RedrawWindow | 更新客戶區中的指定矩形或區域 |
GetWindowDC | 得到整個窗口的顯示環境,包括標題條、菜單和滾動條 |
ReleaseDC | 是否客戶和窗口設備環境,使其它應用程序可以使用它們 |
UpdateWindow | 更新客戶區 |
SetRedraw | 使CWnd的變化可以被重畫,或者禁止重畫發生的變化 |
GetUpdateRect | 得到徹底封閉了CWnd中更新區域的最小矩形的座標 |
GetUpdateRgn | 得到CWnd的更新區域 |
Invalidate | 使整個客戶區無效 |
InvalidateRect | 在當前的更新區域中加入給定的矩形,使客戶區的給定矩形無效 |
InvalidateRgn | 在當前的更新區域中加入給定的區域,使客戶區的給定區域無效 |
ValidateRect | 在當前的更新區域中刪除給定的矩形,使客戶區的給定矩形有效 |
ValidateRgn | 在當前的更新區域中刪除給定的區域,使客戶區的給定區域有效 |
ShowWindow | 顯示或隱藏窗口 |
IsWindowVisible | 肯定窗口是否可見 |
ShowOwnedPopups | 顯示或隱藏該窗口擁有的全部彈出窗口 |
EnableScrollBar | 容許或禁止滾動條的一個或兩個箭頭 |
MapWindowPoints | 將一些座標從CWnd的座標空間轉換(映射)到其它窗口的座標空間 |
ClientToScreen | 將給定點或顯示器上矩形的客戶區座標轉換爲屏幕座標 |
ScreenToClient | 將給定點或顯示器上矩形的屏幕座標轉換爲客戶座標 |
SetWindowText | 將窗口的文本或標題文字(若是有)設爲指定的文本 |
GetWindowText | 返回窗口的文本或標題文字(若是有) |
GetWindowTextLength | 返回窗口文本或標題文字的長度 |
SetFont | 設置當前字體 |
GetFont | 得到當前字體 |
GetScrollPos | 得到滾動塊的當前位置 |
GetScrollRange | 複製指定滾動條的最大和最小滾動條位置 |
ScrollWindow | 滾動客戶區的內容 |
ScrollWindowEx | 滾動客戶區的內容,與ScrollWindow相似,還有其它功能 |
GetScrollInfo | 得到SCROLLINFO結構維護的滾動條信息 |
GetScrollLimit | 得到滾動條的限制 |
SetScrollInfo | 設置滾動條信息 |
SetScrollPos | 設置滾動塊的當前位置,若是指定,並重畫滾動條以反映新的位置 |
SetScrollRange | 設置指定滾動條的最小和最大位置值 |
ShowScrollBar | 顯示或隱藏滾動條 |
EnableScrollBarCtrl | 容許或禁止一個滾動條控件 |
GetScrollBarCtrl | 返回滾動條控件 |
RepositionBars | 從新設定客戶區中控制條的位置 |
DragAcceptFiles | 指明該窗口將接收拖來的文件 |
CreateCaret | 爲系統插字符建立一個新的形狀並得到它的全部權 |
CreateSolidCaret | 爲系統插字符建立一個實心塊並得到它的全部權 |
CreateGrayCaret | 爲系統插字符建立一個灰色塊並得到它的全部權 |
GetCaretPos | 得到插字符當前位置的客戶區座標 |
SetCaretPos | 將插字符移動到指定的位置 |
HideCaret | 經過將插字符移出顯示屏幕而隱藏它 |
ShowCaret | 在插字符的當前位置顯示插字符。一旦被顯示,插字符就會自動閃爍 |
CheckDlgButton | 在按鈕控件旁放置或者清除檢查標記 |
CheckRadioButton | 選中指定的單項按鈕並清除指定的按鈕組中其它全部單項按鈕的檢查標記 |
GetCheckedRadioButton | 返回一組按鈕中當前選中的單項按鈕的ID |
DlgDirList | 用文件或目錄列表填充一個列表框 |
DlgDirListComboBox | 用文件或目錄列表填充一個組合框中的列表框 |
DlgDirSelect | 得到列表框的當前選擇 |
DlgDirSelectComboBox | 得到組合框中列表框的當前選擇 |
GetDlgItemInt | 將給定對話框中控件的文本轉換爲整數 |
GetDlgItemText | 得到與控件相關的標題或文本 |
GetNextDlgGroupItem | 在一組控件內搜索下一個(或上一個)控件 |
GetNextDlgTabItem | 得到指定的控件以後(或以前)具備WS_TABSTOP風格的第一個控件 |
IsDlgButtonChecked | 肯定按鈕控件是否有檢查標記 |
IsDialogMessage | 肯定給定的消息是不是送往無模式對話框的,若是是,則處理它 |
SendDlgItemMessage | 向指定的控件發送一條消息 |
SetDlgItemInt | 將控件的文本設爲表明一個整數的字符串 |
SetDlgItemText | 設置指定的對話框中的控件的標題或文本 |
SubclassDlgItem | 將一個Windows控件與CWnd對象鏈接,而後使它經過CWnd的消息映射轉發消息 |
ExecuteDlgInit | 初始化對話框資源 |
RunModalLoop | 得到、轉換或分派來自模式窗口的消息 |
ContinueModal | 繼續一個窗口的模式狀態 |
EndModalLoop | 結束一個窗口的模式狀態 |
BindDefaultProperty | 像類型庫中標記的那樣,將調用對象的缺省的簡單移動屬性和與數據源控件相關的遊標綁定在一塊兒 |
BindProperty | 將一個遊標移動屬性與數據移動控件綁定在一塊兒,而後在MFC的綁定管理器中註冊這種聯繫 |
GetDSCCursor | 得到遊標的指針,該遊標是經過數據源控件的DataSource、UserName、Password和SQL屬性定義的 |
GetMenu | 得到指定菜單的指針 |
SetMenu | 將菜單設爲指定的菜單 |
DrawMenuBar | 重畫菜單條 |
GetSystemMenu | 容許應用程序訪問控制菜單,用於拷貝和修改 |
HiliteMenuItem | 加亮顯示一個頂層(菜單條)菜單項,或者取消加亮顯示 |
EnableToolTips | 容許工具提示控件 |
CancelToolTips | 禁止工具提示控件 |
FilterToolTipMessage | 得到與對話框中控件相關的標題和文本 |
OnToolHitTest | 肯定一個點是否位於指定工具的邊界矩形之中並得到工具的信息 |
SetTimer | 安裝一個系統定時器,當它被激活時,發送一個WM_TIMER消息 |
KillTimer | 銷燬一個系統定時器 |
FlashWindow | 使窗口閃爍一次 |
MessageBox | 建立並顯示一個窗口,其中包含了應用程序提供的消息和標題 |
GetCurrentMessage | 返回這個窗口當前處理的消息的指針。只應該在OnMessage消息處理函數內部調用 |
Default | 調用缺省的窗口過程,它提供了對應用程序沒有處理的任何窗口消息的缺省處理 |
PreTranslateMessage | 在消息被髮送到Windows函數TranslateMessage和DispatchMessage以前,CWinApp使用這個函數來過濾窗口消息 |
SendMessage | 向CWnd對象發送一個消息,直到這條消息被處理以後才返回 |
PostMessage | 將一條消息放入應用程序的消息隊列,而後不等窗口處理這條消息直接返回 |
SendNotifyMessage | 將一條消息發送到窗口並儘快返回,返回的速度取決於該窗口是不是由調用線程所建立 |
ChangeClipboardChain | 將CWnd從剪貼板觀察器的鏈中清除 |
SetClipboardViewer | 將CWnd加入一個窗口鏈,每當剪貼板的內容發生變化時,就會通知這些窗口 |
OpenClipboard | 打開剪貼板。其它應用程序將不能修改剪貼板,直到調用Windows的CloseClipboard函數 |
GetClipboardOwner | 得到指向剪貼板的當前擁有者的指針 |
GetOpenClipboardWindow | 得到當前打開剪貼板的窗口的指針 |
GetClipboardViewer | 得到剪貼板觀察器鏈中的第一個窗口的指針 |
SetProperty | 設置OLE控件的屬性 |
OnAmbientProperty | 實現周圍屬性值 |
GetControlUnknown | 得到指向未知OLE控件的指針 |
GetProperty | 得到OLE控件的屬性 |
InvokeHelper | 激活OLE控件的方法或屬性 |
WindowProc | 爲CWnd對象提供了窗口過程。缺省的窗口過程經過消息映射分派消息 |
DefWindowProc | 調用缺省的窗口過程,它提供了對應用程序沒有處理的任何窗口消息的缺省處理 |
PostNcDestroy | 這個虛擬函數在窗口被銷燬之後被缺省的OnNcDestroy函數所調用 |
OnNotify | 框架調用這個函數以通知父窗口,在它的一個控件發生了一個事件,或該控件須要消息 |
OnChildNotify | 父窗口調用這個函數,給被通知的控件一個響應控件通知消息的機會 |
DoDataExchange | 用於對話框數據交換和校驗。由UpdateData調用 |
OnInitMenu | 當菜單要被激活時調用這個函數 |
OnInitMenuPopup | 當彈出菜單要被激活時調用這個函數 |
OnSysChar | 當一次擊鍵被轉換爲系統字符消息時調用這個函數 |
OnSysCommand | 當用戶從控制菜單中選擇命令,或者當用戶選擇了最大化或最小化按鈕時,調用這個函數 |
OnSysDeadChar | 當一次擊鍵被轉換爲系統死鍵(例如重音字符)消息時調用這個函數 |
OnSysKeyDown | 當用戶按住ALT鍵並按下其它鍵時調用這個函數 |
OnSysKeyUp | 當用戶放開一個鍵,而此時ALT鍵被按下,則調用這個函數 |
OnCompacting | 當Windows檢測到系統內存不多時,就調用這個函數 |
OnDevModeChange | 當用戶改變了設備模式設置時,就爲頂層窗口調用這個函數 |
OnFontChange | 當字體資源池發生變化時調用這個函數 |
OnPaletteIsChanging | 當應用程序將要實現其邏輯調色板時通知其它應用程序 |
OnPaletteChanged | 調用這個函數時使用調色板的全部窗口可以實現它們的邏輯調色板並更新它們的客戶區 |
OnSysColorChange | 當系統顏色設置發生改變時爲全部的頂層窗口調用這個函數 |
OnWindowPosChanging | 因爲調用了SetWindowPos函數或其它的窗口管理函數,於是窗口的大小、位置和次序將要發生變化時,就調用這個函數 |
OnWindowPosChanged | 因爲調用了SetWindowPos函數或其它的窗口管理函數,於是當窗口的大小、位置和次序發生了變化時,就調用這個函數 |
OnDropFiles | 當用戶在註冊爲能夠接收拖放文件的窗口上方釋放鼠標左鍵時,這個函數就被調用 |
OnSpoolerStatus | 每當一個做業被加入或移出打印管理器的隊列時,打印管理器就調用這個函數 |
OnTimeChange | 在系統時間改變以後,爲全部的頂層窗口調用這個函數 |
OnWinIniChange | 在Windows的初始化文件WIN.INI改變以後爲全部的頂層窗口調用這個函數 |
OnCommand | 當用戶選擇了一個命令時調用這個函數 |
OnActivate | 當CWnd要被激活或退出激活狀態時調用這個函數 |
OnActivateApp | 當應用程序要被激活或退出激活狀態時調用這個函數 |
通常消息處理函數
OnCancelMode | 調用這個函數以容許CWnd取消任何內部模式,好比鼠標捕獲狀態 |
OnChildActivate | 當CWnd的大小和位置發生變化或者CWnd被激活時,就爲多文檔界面(MDI)的子窗口調用這個函數 |
OnClose | 調用這個函數,做爲關閉CWnd的信號 |
OnCopyData | 從一個應用程序複製數據到另外一個應用程序 |
OnCreate | 做爲窗口建立過程的一部分來調用 |
OnCtlColor | 若是CWnd是一個控件的父窗口,當控件要被重畫時就調用這個函數 |
OnDestroy | 當CWnd要被銷燬時就調用這個函數 |
OnEnable | 當CWnd被容許或禁止時調用這個函數 |
OnEndSession | 當會話將要結束時調用這個函數 |
OnEnterIdle | 調用這個函數以通知應用程序的主窗口過程,模式對話框或菜單正在進入空閒狀態 |
OnEraseBkgnd | 當須要擦除窗口的背景時調用這個函數 |
OnGetMinMaxInfo | 每當Windows須要知道最大化的位置和大小,或者最小或最大跟蹤尺寸時,就調用這個函數 |
OnIconEraseBkgnd | 當CWnd被最小化(圖標化),而且在畫出圖標以前,必須填充圖標的背景時調用這個函數 |
OnKillFocus | 當CWnd失去輸入焦點時當即調用這個函數 |
OnMenuChar | 當用戶按下一個菜單助記字符,可是不能與當前菜單中任何預約義的助記符相匹配時,就調用這個函數 |
OnMenuSelect | 當用戶選擇了一個菜單項時就調用這個函數 |
OnMove | 當CWnd的位置發生變化時調用這個函數 |
OnMoving | 指明用戶正在移動CWnd對象 |
OnDeviceChange | 通知應用程序或設備驅動程序,設備或計算機的硬件配置發生了變化 |
OnStyleChanged | 指明Windows的::SetWindowLong函數已經改變了一個或多個窗口風格 |
OnStyleChanging | 指明Windows的::SetWindowLong函數將要改變一個或多個窗口風格 |
OnPaint | 調用這個函數以重畫窗口的一部分 |
OnParentNotify | 當建立或銷燬一個子窗口,或者當用戶在子窗口上方點擊了鼠標鍵時調用這個函數 |
OnQueryDragIcon | 當一個最小化(圖標化)的CWnd要被用戶拖拉時就調用這個函數 |
OnQueryEndSession | 當用戶選擇結束Windows會話時就調用這個函數 |
OnQueryNewPalette | 通知CWnd它將接收輸入焦點 |
OnQueryOpen | 當CWnd是一個圖標而且用戶請求打開這個圖標時就調用這個函數 |
通常消息處理函數
OnSetFocus | 當CWnd得到輸入焦點時調用這個函數 |
OnShowWindow | 當CWnd被隱藏或顯示時調用這個函數 |
OnSize | 當CWnd的大小被改變之後調用這個函數 |
OnSizing | 指明用戶正在改變矩形的大小 |
OnStyleChanged | 指明窗口的一個或多個風格已經被改變 |
OnStyleChanging | 指明窗口的一個或多個風格將被改變 |
OnCharToItem | 這個函數被具備LBS_WANTKEYBOARDINPUT風格的子列表框調用,用以響應WM_CHAR消息 |
OnCompareItem | 調用這個函數以肯定排序的自畫組合框或列表框中新項的相對位置 |
OnDeleteItem | 當一個自畫子列表框或組合框中將被銷燬時,或者從控件中刪除項時調用這個函數 |
OnDrawItem | 當自畫子按鈕控件、組合框控件、列表框控件或菜單的可視部分須要被畫出時調用這個函數 |
OnDSCNotify | 在響應數據源控件引起的事件時調用,該事件是當與數據源控件綁定的控件修改或將要修改遊標時產生的 |
OnGetDlgCode | 爲控件調用這個函數,使控件可以本身處理輸入的箭頭鍵和TAB鍵 |
OnMeasureItem | 當控件被建立時爲自畫子組合框,列表框或菜單項調用這個函數。CWnd通知Windows該控件的大小 |
SendChildNotifyLastMsg | 提供了從父窗口到子窗口的通知消息,使子窗口可以處理一個任務 |
ReflectChildNotify | 將消息向它的來源反映的幫助函數 |
OnWndMsg | 指明一個窗口消息是否已被處理 |
ReflectLastMsg | 將上一個消息反映到子窗口 |
OnVKeyToItem | 由CWnd所擁有的列表框調用,用於響應WM_KEYDOWN消息 |
OnChar | 當一次擊鍵被轉換爲非系統字符時調用這個函數 |
OnDeadChar | 當一次擊鍵被轉換爲非系統死鍵(例如重音字符)時調用這個函數 |
OnHScroll | 當用戶點擊了CWnd的水平滾動條時調用這個函數 |
OnKeyDown | 當按下了一個非系統鍵時調用這個函數 |
OnKeyUp | 當放開一個非系統鍵時調用這個函數 |
OnLButtonDblClk | 當用戶雙擊鼠標左鍵時調用這個函數 |
輸入消息處理函數
OnLButtonDown | 當用戶按下鼠標左鍵時調用這個函數 |
OnLButtonUp | 當用戶放開鼠標左鍵時調用這個函數 |
OnMButtonDblClk | 當用戶雙擊鼠標中鍵時調用這個函數 |
OnMButtonDown | 當用戶按下鼠標中鍵時調用這個函數 |
OnMButtonUp | 當用戶放開鼠標中鍵時調用這個函數 |
OnMouseActivate | 當鼠標位於非活動窗口,而且用戶按下鼠標鍵時調用這個函數 |
OnMouseMove | 當鼠標光標移動時調用這個函數 |
OnMouseWheel | 當用戶旋轉鼠標輪時調用這個函數。使用WindowsNT4.0的消息處理 |
OnRegisteredMouseWheel | 當用戶旋轉鼠標輪的時候調用這個函數。使用Windows 95和Windows NT 3.51的消息處理 |
OnRButtonDblClk | 當用戶雙擊鼠標右鍵時調用這個函數 |
OnRButtonDown | 當用戶按下鼠標右鍵時調用這個函數 |
OnRButtonUp | 當用戶放開鼠標右鍵時調用這個函數 |
OnSetCursor | 若是沒有捕獲鼠標輸入而且鼠標緻使光標在窗口內移動時,就調用這個函數 |
OnTimer | 當達到SetTimer指定的時間間隔時調用這個函數 |
OnVScroll | 當用戶點擊窗口的垂直滾動條時調用這個函數 |
OnCaptureChanged | 向失去鼠標捕獲的窗口發送一條消息 |
OnNcActivate | 當須要改變非客戶區以指明活動或非活動狀態時調用這個函數 |
OnNcCalcSize | 當須要計算非客戶區的大小和位置時調用這個函數 |
OnNcCreate | 在OnCreate以前,當要建立非客戶區時調用這個函數 |
OnNcDestroy | 當非客戶區要被銷燬的時候調用這個函數 |
OnNcHitTest | 若是CWnd中包含了光標,或者用SetCapture捕獲了鼠標輸入時,每當鼠標移動時,Windows調用這個函數 |
OnNcLButtonDblClk | 當光標位於CWnd的非客戶區,用戶雙擊鼠標左鍵時,就調用這個函數 |
OnNcLButtonDown | 當光標位於CWnd的非客戶區,用戶按下鼠標左鍵時,就調用這個函數 |
OnNcLButtonUp | 當光標位於CWnd的非客戶區,用戶放開鼠標左鍵時,就調用這個函數 |
OnNcMButtonDblClk | 當光標位於CWnd的非客戶區,用戶雙擊鼠標中鍵時,就調用這個函數 |
OnNcMButtonDown | 當光標位於CWnd的非客戶區,用戶按下鼠標中鍵時,就調用這個函數 |
OnNcMButtonUp | 當光標位於CWnd的非客戶區,用戶放開鼠標中鍵時,就調用這個函數 |
非客戶區消息處理函數
OnNcMouseMove | 當光標在CWnd的非客戶區中移動時就調用這個函數 |
OnNcPaint | 當非客戶區須要重畫時調用這個函數 |
OnNcRButtonDblClk | 當光標位於CWnd的非客戶區,用戶雙擊鼠標右鍵時,就調用這個函數 |
OnNcRButtonDown | 當光標位於CWnd的非客戶區,用戶按下鼠標右鍵時,就調用這個函數 |
OnNcRButtonUp | 當光標位於CWnd的非客戶區,用戶放開鼠標右鍵時,就調用這個函數 |
OnMDIActivate | 當MDI子窗口被激活或失去活動狀態時調用這個函數 |
OnAskCbFormatName | 當剪貼板的擁有者將顯示剪貼板內容時,剪貼板觀察程序就調用這個函數 |
OnChangeCbChain | 通知指定的窗口將從鏈中刪除 |
OnDestroyClipboard | 當經過Windows的EmptyClipboard函數清空剪貼板時調用這個函數 |
OnDrawClipboard | 當內容變化時調用這個函數 |
OnHScrollClipboard | 當剪貼板的擁有者要滾動剪貼板的圖像、使適當的部分無效以及更新滾動條值的時候調用這個函數 |
OnPaintClipboard | 當剪貼板觀察器的客戶區須要重畫的時候調用這個函數 |
OnRenderAllFormats | 當擁有者應用程序將被銷燬且須要提交它的全部格式時調用這個函數 |
OnRenderFormat | 當一種延遲提交的格式須要被提交時爲剪貼板擁有者調用這個函數 |
OnSizeClipboard | 當剪貼板觀察器窗口的客戶區大小發生變化時調用這個函數 |
OnVScrollClipboard | 當擁有者要滾動剪貼板的圖像、使適當的部分無效以及更新滾動條值的時候調用這個函數 |
OnEnterMenuLoop | 進入一個菜單模式的循環時調用該函數 |
OnExitMenuLoop | 當退出一個菜單模式的循環時調用該函數 |