日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

窗体的消息处理

發布時間:2025/5/22 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 窗体的消息处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們知道一個應用程序一般都不是僅僅有一個窗體組成的,往往是多窗體組成的,比方一個對話框的窗體上有一個button,這里對話框是一個窗體。button也是一個窗體。

假設一個對話框上有100個button。就是100個窗體。這樣句柄會比較多。因而出現了DirectUI的設計方法,全部button和主窗體都是同一個窗體,採用分不同區域來繪畫而成。這里就遇到了一個問題。每一個窗體是獨立存在的,但在前面的樣例里,能夠看到每一個窗體都是調用PyWndProc函數來處理。

意味著多個窗體的消息都拋給PyWndProc函數處理,這樣處理起來僅僅會越來越多。越來越復雜。站在面向對象設計角度來考慮,能否夠有一個更好的方案解決呢?這個是能夠的。由于Windows里給每一個窗體保留了一個用戶數據字段。僅僅要利用這個字段,就能夠關聯起每一個窗體與消息類之間的關系。比方窗體1就調用窗體1的類來處理消息,窗體2就調用窗體2的類來處理消息,這樣每一個窗體的獨立性就得到保障。不用操心窗體1的消息會跑到窗體2去。為此。我聲明了一個類Controller。用這個類來處理窗體的消息,當然不同的窗體都能夠繼承這個類,而實現其他的窗體消息處理。創建類Controller的實例之后,把這個實例對象保存到窗體的GWL_USERDATA字段里。參考《Windows?API一日一練》介紹創建窗體的函數,例如以下:

HWND?CreateWindowEx(

DWORD?dwExStyle,//窗體的擴展風格

LPCTSTR?lpClassName,//指向注冊類名的指針

LPCTSTR?lpWindowName,//指向窗體名稱的指針

DWORD?dwStyle,//窗體風格

int?x,//窗體的水平位置

int?y,//窗體的垂直位置

int?nWidth,//窗體的寬度

int?nHeight,//窗體的高度

HWND?hWndParent,//父窗體的句柄

HMENU?hMenu,//菜單的句柄或是子窗體的標識符

HINSTANCE?hInstance,//應用程序實例的句柄

LPVOID?lpParam//指向窗體的創建數據

);

在這個API函數的最后字段lpParam。就是指向窗體用戶自己定義的數據,在這里,我把消息處理類對象的指針放到這里。就能夠讓每一個窗體有自己的消息處理類了。

定義類Controller例如以下:

class Controller:def __init__(self):self.hWnd = HWND()def SetWnd(self, hWnd):self.hWnd = hWnddef MyWndProc(self, hWnd, Msg, wParam, lParam):if Msg == WM_DESTROY: windll.user32.PostQuitMessage(0)return 0else:return windll.user32.DefWindowProcW(hWnd, Msg, wParam, lParam)

在類Controller里。主要有成員變量self.hWnd。它是用來保存每一個窗體的句柄;成員函數MyWndProc是用來處理每一個窗體的消息,假設窗體沒有處理。就會把這些消息傳遞給Windows系統默認處理,而這個處理默認消息的函數是DefWindowProcW函數。由于一個窗體的消息是有非常多的,并非每一個窗體都須要處理這么多消息,因此僅僅有須要的才處理,這樣處理方式是非常方便的。


轉載于:https://www.cnblogs.com/liguangsunls/p/6860496.html

總結

以上是生活随笔為你收集整理的窗体的消息处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 狠狠摸狠狠操 | 国产精品久久久久久久一区探花 | 国产亚洲自拍一区 | 一级一片免费播放 | 国产欧美在线观看 | 羞羞影院体验区 | 伊人伊人鲁| 啪啪.com | 亚洲av久久久噜噜噜噜 | 一级特黄肉体裸片 | 久久精品国产视频 | 国产成人一区二区 | 91成人精品一区在线播放 | 一级黄色大片免费看 | 精品欧美一区二区三区 | 成人91免费视频 | 国产乡下妇女做爰视频 | 亚洲h视频| 4438成人网| 成人在线免费网站 | 国产精品一区二区三区免费在线观看 | www.免费av| 亚洲社区在线 | 国产肉丝在线 | 天天搞夜夜爽 | 啪啪自拍 | 最新日韩视频 | 蜜臀久久 | 久久久成人网 | 天天摸天天操天天干 | 深夜福利av | 91在线精品观看 | 亚洲一区免费在线 | 激情999| 一区二区精品在线观看 | 亚洲最大成人网色 | 涩色网站 | 素人一区二区 | 1000亚洲裸体人体 | 国产精品理论片 | 中国 免费 av| 免费 成 人 黄 色 | 日韩欧美高清在线 | 天天黄色片 | 亚洲精品久久视频 | 色播网址| 久久午夜福利电影 | 91视频爱爱| 久久h| 色小姐综合网 | 少妇厨房愉情理伦bd在线观看 | 亚洲一区二区三区黄色 | 激情啪啪网 | 樱花影院电视剧免费 | 波多野吉衣中文字幕 | 美女视频黄色在线观看 | av网址在线看 | 久久激情网站 | jizz国产视频 | 亚洲成熟少妇视频在线观看 | 欧美a视频在线观看 | 美女裸体网站久久久 | 日本体内she精高潮 男女视频在线免费观看 | 欧美一区二区三区免费看 | 亚洲双插| 8x8ⅹ国产精品一区二区二区 | 国产激情成人 | 在哪里可以看毛片 | 亚洲天堂999 | 欧美交受高潮1 | 久久av网站| 亚洲精品影视 | 一级久久 | 中文在线√天堂 | 无码日韩精品一区二区 | 国产 欧美 日韩 一区 | 男女性高潮免费网站 | 亚洲人成在线观看 | 亚洲午夜av | 波多野结衣亚洲 | 绝顶高潮videos合集 | 天天操天天操天天干 | 神马午夜国产 | 欧美久久久久久 | 色老板精品凹凸在线视频观看 | 成熟了的熟妇毛茸茸 | 99自拍视频在线观看 | 四虎影视成人永久免费观看亚洲欧美 | 日本超碰| 久久久久久色 | av在线不卡观看 | 在线观看视频免费 | 麻豆91茄子在线观看 | 波多野吉衣一区二区 | 久久伊人精品 | 91香蕉黄 | 国产r级在线| 亚洲图色在线 | 少妇天天干|