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

正文內(nèi)容

圖形開發(fā)界面ppt課件(編輯修改稿)

2025-02-13 16:59 本頁面
 

【文章內(nèi)容簡介】 SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? MiniGUI 中有三種窗口類型: 主窗口、對話框和控件窗口(子窗口) 。 ? 每一個(gè) MiniGUI應(yīng)用程序一般都要至少創(chuàng)建一個(gè)主窗口,作為應(yīng)用程序的主界面或開始界面。 ? 主窗口通常包括一些子窗口,這些子窗口通常是控件窗口,也可以是自定義窗口類 。 ? 應(yīng)用程序還會創(chuàng)建其它型的窗口,例如對話框。對話框本質(zhì)上就是主窗口,應(yīng)用程序一般通過對話框提示用戶進(jìn)行輸入操作。 主窗口: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 主窗口沒有很精確的定義,目前可以認(rèn)為其特征主要有父窗口為 Desktop的,擁有子窗口,在創(chuàng)建后可以進(jìn)入消息循環(huán)。 ? MiniGUI 為每個(gè)托管窗口為 Desktop的 主窗口建立單獨(dú)的消息隊(duì)列 ,在該主窗口上派生出的主窗口、對話框及控件(子窗口)均使用同一消息隊(duì)列。 ? 在調(diào)用 MiniGUIMain之前, MiniGUI 啟動桌面窗口 Desktop。桌面窗口作為 MiniGUI 的窗口管理器而存在,也是事實(shí)上根窗口。 主窗口: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? MAINWINCREATE結(jié)構(gòu)體指定窗口信息: ? 窗口風(fēng)格 ? 窗口標(biāo)題 ? 窗口菜單 ? 窗口圖標(biāo) ? 窗口背景色 ? ?? 主窗口屬性: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY 主窗口屬性: 窗口風(fēng)格 窗口的標(biāo)題 窗口的附加風(fēng)格 附加在窗口上的菜單句柄 在窗口中所使用的鼠標(biāo)光標(biāo)句柄 程序的圖標(biāo) 該窗口的消息處理函數(shù)指針 窗口左上角相對屏幕的絕對橫坐標(biāo),以象素點(diǎn)表示 窗口左上角相對屏幕的絕對縱坐標(biāo),以象素點(diǎn)表示 窗口右下角相對屏幕的絕對橫坐標(biāo),以象素點(diǎn)表示 窗口右下角相對屏幕的絕對縱坐標(biāo),以象素點(diǎn)表示 窗口背景顏色 附帶給窗口的一個(gè) 32 位值 窗口消息隊(duì)列的托管窗口 COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY 主窗口風(fēng)格: 風(fēng)格 描述 WS_BORDER 創(chuàng)建一個(gè)具有單線邊框的窗口 WS_THICKFRAME 創(chuàng)建一個(gè)具有寬邊框的窗口 WS_THINFRAME 創(chuàng)建一個(gè)具有細(xì)邊框的窗口 WS_CAPTION 創(chuàng)建一個(gè)具有標(biāo)題欄的窗口 WS_MAXMIZEBOX 創(chuàng)建一個(gè)具有最大化框的窗口 WS_MINIMIZEBOX 創(chuàng)建一個(gè)具有最小化框的窗口 WS_SYSMENU 創(chuàng)建一個(gè)具有系統(tǒng)菜單的窗口 WS_HSCROLL 創(chuàng)建一個(gè)具有水平滾動條的窗口 WS_VSCROLL 創(chuàng)建一個(gè)具有垂直滾動條的窗口 WS_DISABLED 創(chuàng)建一個(gè)初始為禁止的窗口 WS_MAXIMIZE 創(chuàng)建一個(gè)初始最大化的窗口 WS_MINIMIZE 創(chuàng)建一個(gè)初始最小化的窗口 WS_VISIBLE 創(chuàng)建一個(gè)初始可見的窗口 WS_EX_TOPMOST 創(chuàng)建一個(gè)頂層窗口, Win32 的擴(kuò)展風(fēng)格 WS_BORDER WS_CAPTION WS_VISIBLE WS_VISIBLE COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 簡而言之,回調(diào)函數(shù)就是一個(gè)通過函數(shù)指針調(diào)用的函數(shù)。如果把函數(shù)的指針(地址)作為參數(shù)傳遞給另一個(gè)函數(shù),當(dāng)這個(gè)指針被用為調(diào)用它所指向的函數(shù)時(shí),就可以說這是回調(diào)函數(shù)。 ? 使用回調(diào)函數(shù)實(shí)際上就是在調(diào)用某個(gè)函數(shù)(通常是類 API函數(shù))時(shí),將自己的一個(gè)函數(shù)(這個(gè)函數(shù)為回調(diào)函數(shù))的地址作為參數(shù)傳遞給那個(gè)函數(shù)。而那個(gè)函數(shù)在需要的時(shí)候,利用傳遞的地址調(diào)用回調(diào)函數(shù),這時(shí)你可以利用這個(gè)機(jī)會在回調(diào)函數(shù)中處理消息或完成一定的操作。至于如何定義回調(diào)函數(shù),跟具體使用的類 API函數(shù)有關(guān),一般在幫助中有說明回調(diào)函數(shù)的參數(shù)和返回值等。 回調(diào)函數(shù): COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 主窗口過程實(shí)際是一個(gè) 回調(diào)函數(shù) ,一般由 DispatchMessage 函數(shù)調(diào)用,用來處理應(yīng)用的消息。 ? 定義: int TestMainWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam) ; – 四個(gè)入口參數(shù):消息的目標(biāo)窗口句柄、消息、消息的 WPARAM (即 unsigned int) 型參數(shù)和 LPARAM (即 long int) 型參數(shù)。 – 在 32 位系統(tǒng)中,消息的兩個(gè)參數(shù)實(shí)際是等長度的。 ? 主窗口的窗口過程處理應(yīng)用感興趣的消息,將其他消息傳遞給 DefaultMainWinProc 函數(shù)處理。 主窗口過程: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY 消息和消息隊(duì)列 ? MiniGUI 是一個(gè)圖形用戶界面支持系統(tǒng),通常的 GUI 編程概念均適用于 MiniGUI 編程,如窗口和事件驅(qū)動編程等。 ? 鍵盤和鼠標(biāo)動作產(chǎn)生事件,這些事件通常被發(fā)送到具有焦點(diǎn)的窗口,由該窗口相關(guān)聯(lián)的例程來處理。 ? 焦點(diǎn)和光標(biāo)的概念用于管理輸入設(shè)備和輸入事件的傳送。應(yīng)用程序可以捕捉鼠標(biāo)光標(biāo)并獲取光標(biāo)事件、鍵盤輸入焦點(diǎn)和鍵盤事件。 ? 應(yīng)用程序可通過調(diào)用一些系統(tǒng)函數(shù)來要求重繪窗口或窗口的某一部分,這些事件通常由窗口例程來處理。 事件驅(qū)動編程: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 消息被如下定義( minigui/): ? typedef struct _MSG ? { ? HWND hwnd。 //窗口句柄 ? int message。 //消息類型 ? WPARAM wParam。 //消息參數(shù) ? LPARAM lParam。 //消息參數(shù) ? struct timeval time。 ? void* pAdd。 ? }MSG。 ? typedef MSG* PMSG。 消息結(jié)構(gòu)的定義: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 系統(tǒng)消息: MSG_IDLE、 MSG_TIMER、 MSG_FDEVENT等; ? 對話框消息: MSG_COMMAND、 MSG_INITDIALOG、 MSG_SETTEXT等; ? 窗口繪制消息: MSG_PAINT、 MSG_ERASEBKGND等; ? 窗口創(chuàng)建和銷毀消息: MSG_CREATE、 MSG_DESTROY、 MSG_CLOSE等; ? 鍵盤和鼠標(biāo)消息: MSG_KEYDOWN、 MSG_CHAR、MSG_LBUTTONDOWN等; ? 鼠標(biāo) /鍵盤后處理消息: MSG_SETCURSOR、 MSG_SETFOCUS、MSG_KILLFOCUS等; ? 用戶自定義消息 MSG_USER 消息的種類: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 消息隊(duì)列:系統(tǒng)中用于存儲消息的一塊內(nèi)存區(qū)域,每個(gè)消息存儲在一個(gè)消息結(jié)構(gòu)中 。 ? MiniGUI有兩種向窗口過程發(fā)送消息的辦法: –把消息投遞到一個(gè)先進(jìn)先出的消息隊(duì)列中。 —— 大多數(shù)消息。 –通過消息發(fā)送函數(shù)直接調(diào)用窗口過程函數(shù)。 —— 需立即處理,如MSG_ERASEBKGND消息。 消息隊(duì)列: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? MiniGUI 為每個(gè)托管窗口為 Desktop的 主窗口建立單獨(dú)的消息隊(duì)列 ,在該主窗口上派生出的主窗口、對話框及控件(子窗口)均使用同一消息隊(duì)列。 ? 消息隊(duì)列中存儲大部分消息,如底層的鍵盤和鼠標(biāo)消息。還有上層邏輯消息等等。大部分消息要經(jīng)過消息隊(duì)列存儲。 消息處理 COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? MiniGUIThreads 中每個(gè)線程創(chuàng)建的第一個(gè)主窗口,其托管窗口必須是桌面,即HWND_DESKTOP,該線程的其他窗口,必須由屬于同一線程的已有主窗口作為托管窗口。系統(tǒng)在托管窗口為 HWND_DESKTOP 時(shí)創(chuàng)建新的消息隊(duì)列,而在指定非桌面的窗口作為托管窗口時(shí),使用該托管窗口的消息隊(duì)列。 窗口消息隊(duì)列的托管窗口 COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 消息循環(huán) ? minigui中大部分動作要在消息循環(huán)中調(diào)用消息處理函數(shù)來完成。實(shí)際上消息循環(huán)就是不斷的從消息隊(duì)列中取出消息 ,直至遇到MSG_QUIT才退出該次消息循環(huán)。 ? while (GetMessage(amp。Msg, hMainWnd) { ? TranslateMessage(amp。Msg)。 ? DispatchMessage(amp。Msg)。 ? } ? Msg 變量是類型為 MSG的結(jié)構(gòu), MSG結(jié)構(gòu)在 。 消息處理 : COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 窗口過程函數(shù) ? 在 ,窗口過程是HelloWinProc。 ? CreateMainWindow 函數(shù)根據(jù) MAINWINCREATE 結(jié)構(gòu)類型的參數(shù)中指定的窗口過程創(chuàng)建主窗口。 ? 窗口過程函數(shù)由 MiniGUI進(jìn)行調(diào)用,是一個(gè)回調(diào)函數(shù)。 ? 窗口過程函數(shù)不予處理的消息應(yīng)該傳給 DefaultMainWinProc 函數(shù)進(jìn)行缺省處理。 消息處理: COMPUTER SCIENCE AND TECHNOLOGY HUNAN CITY UNIVERSITY ? 窗口過程函數(shù) ? 窗口過
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1