freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第4講windows編程機(jī)制(1)(編輯修改稿)

2025-07-01 10:54 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 對(duì)應(yīng)的那一位( bit)為 1,其余的 bit都為 0。 33 --窗口類的類型 使用 goto definition,發(fā)現(xiàn) CS_VREDRAW=0x0001,CS_HREDRAW=0x0002, CS_DBLCLKS =0x0008, CS_NOCLOSE=0x0200。共同點(diǎn)就是只有一位為 1,其余位都為 0。 如果希望某一變量的值既有 CS_VREDRAW又有 CS_HREDRAW特性,可使用 或 運(yùn)算,如: style=CS_VREDRAW | CS_HREDRAW ; 如果希望在某一變量原有的幾個(gè)特征上去掉其中一個(gè)特征,用 取反 ( ~)之后再進(jìn)行 與 ( amp。)運(yùn)算。如在剛才的 style的基礎(chǔ)上去掉 CS_NOCLOSE特征,可以用: style=styleamp。 ~CS_NOCLOSE; 34 --窗口過(guò)程函數(shù) lpfnWndProc:指定了這一類型窗口的過(guò)程函數(shù),也稱回調(diào)函數(shù)。 回調(diào)函數(shù)的原理:當(dāng)應(yīng)用程序收到給某一窗口的消息時(shí),就應(yīng)該調(diào)用某一函數(shù)來(lái)處理這條消息。這一調(diào)用過(guò)程不用應(yīng)用程序自己來(lái)實(shí)施,而由操作系統(tǒng)來(lái)完成,但是,回調(diào)函數(shù)本身的代碼必須由應(yīng)用程序自己完成。對(duì)于一條消息,操作系統(tǒng)到底調(diào)用應(yīng)用程序中的哪個(gè)函數(shù)(回調(diào)函數(shù))來(lái)處理呢?操作系統(tǒng)調(diào)用的就是接受消息的窗口所屬的類型中的 lpfnWndProc成員指定的函數(shù)。每一種不同類型的窗口都有自己專用的回調(diào)函數(shù),該函數(shù)就是通過(guò) lpfnWndProc成員指定的。 35 --窗口過(guò)程函數(shù) 舉例:汽車廠家生產(chǎn)汽車好比應(yīng)用程序創(chuàng)建窗口,用戶使用汽車好比操作系統(tǒng)管理窗口,某種汽車在銷售前就指定好了修理站(類似回調(diào)函數(shù)),當(dāng)用戶的汽車出現(xiàn)故障后(類似窗口收到消息),汽車用戶(類似操作系統(tǒng))自己直接找到修理站去修理,不用廠家(類似應(yīng)用程序)親自將車送到修理站去修理,但修理站還得由廠家事先建造好。 36 --設(shè)計(jì)窗口類的示例代碼 WNDCLASS wndcls。 =CS_HREDRAW | CS_VREDRAW。 =0。 =0。 =(HBRUSH)GetStockObject(BLACK_BRUSH)。 =LoadCursor(NULL,IDC_CROSS)。 =LoadIcon(NULL,IDI_ERROR)。 =hInstance。 =WindowProc。 =xiexin20xx。 =NULL。 37 注冊(cè)窗口類 剛才有: WNDCLASS wndcls。 所以: RegisterClass(amp。wndcls)。 ATOM RegisterClass( CONST WNDCLASS *lpWndClass)。 參數(shù) lpWndClass:設(shè)計(jì)窗口類的對(duì)象指針 38 創(chuàng)建窗口 HWND CreateWindow( LPCTSTR lpClassName, // to registered class name LPCTSTR lpWindowName, //2. pointer to window name DWORD dwStyle, // style int x, // position of window int y, //5. vertical position of window int nWidth, //6. window width int nHeight, // height HWND hWndParent, //8. handle to parent or owner window HMENU hMenu, // to menu or childwindow identifier HANDLE hInstance, // to application instance LPVOID lpParam //11. pointer to windowcreation data )。 39 -- 創(chuàng)建窗口 的示例代碼 HWND hwnd。 hwnd=CreateWindow(xiexin20xx,My window, WS_OVERLAPPEDWINDOW, 0,0,600,400,NULL,NULL,hInstance,NULL)。 注:創(chuàng)建成功后,返回系統(tǒng)分配給窗口句柄,否則返回NULL。因此要用一個(gè)句柄變量(如 hwnd)來(lái)保存 WS_OVERLAPPEDWINDOW類型 的窗口具有: Creates an overlapped window with the WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, and WS_MAXIMIZEBOX styles. 40 顯示及更新窗口 BOOL ShowWindow( HWND hWnd, //窗口創(chuàng)建成功后的句柄 int nCmdShow // 窗口顯示狀態(tài) )。 BOOL UpdateWindow( HWND hWnd // 窗口創(chuàng)建成功后的句柄 )。 ShowWindow(hwnd ,SW_SHOWNORMAL)。 UpdateWindow(hwnd)。 還有: SW_MAXIMIZE , SW_SHOWMAXIMIZED SW_SHOWMINIMIZED SW_SHOWDEFAULT 等 41 -- 創(chuàng)建窗口 的示例代碼 HWND hwnd。 hwnd=CreateWindow(xiexin20xx,My window, WS_OVERLAPPEDWINDOW, 0,0,600,400,NULL,NULL,hInstance,NULL)。 WS_OVERLAPPEDWINDOW類型 的窗口具有: Creates an overlapped window with the WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, and WS_MAXIMIZEBOX styles. 42 Windows消息循環(huán) 消息隊(duì)列和在應(yīng)用程序中的輪詢處理 43 Windows消息循環(huán) BOOL GetMessage( LPMSG lpMsg, // 指向消息結(jié)構(gòu)體的地址 HWND hWnd, // 接收消息的窗口句柄 UINT wMsgFilter
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1