易語言編程開發(fā)教程之使用windows api創(chuàng)建窗口
工具/原料
registerclass(用于注冊窗口類信息)在創(chuàng)建窗口前要使用其先登記窗口類信息
createwindow(用于創(chuàng)建窗口)
showwindow(顯示窗口)
defwindowproca 必須有否則窗口將不會(huì)由變化且見不到窗口
dispatchmessage(派發(fā)系統(tǒng)消息)
getmessage(獲取系統(tǒng)消息)
sendmessage 發(fā)送消息
getmodulehandlea 獲取模塊句柄,很有用
translatemessage 翻譯消息,將虛擬消息轉(zhuǎn)換為字符消息
方法/步驟
打開易語言軟件,創(chuàng)建windows控制臺(tái)程序,通過Eapi助手依次插入上面的dll,及自定義數(shù)據(jù)類型(在插入dll的同時(shí)一般都會(huì)自動(dòng)插入),在這里只會(huì)用到一個(gè)自定義數(shù)據(jù)類型WNDCLASS,如圖
ps:1.若有MSG數(shù)據(jù)類型,將其刪除,dll函數(shù)里面的MSG統(tǒng)統(tǒng)都改為整型數(shù)據(jù)類型
2.WNDCLASS 的回調(diào)函數(shù)那一欄將其類型改為”子程序指針“
創(chuàng)建全局變量
1.定義一個(gè)全局文本型變量”類名“,將在第三步、五步使用
2.定義一個(gè)全局整數(shù)型型變量”模塊句柄“,將在第三步、五步使用
創(chuàng)建子程序”登記窗口類“
ps:1.里面有個(gè)”窗口類.類名“,即為那個(gè)全局變量
2..里面有個(gè)”窗口類.模塊句柄“,即為那個(gè)全局變量
創(chuàng)建回調(diào)函數(shù)(函數(shù)名自定義)
格式 返回類型 整數(shù)型
參數(shù)1 整數(shù)型 句柄
參數(shù)2 整數(shù)型 消息
參數(shù)3 整數(shù)型 附加參數(shù)
參數(shù)4 整數(shù)型 附加參數(shù)
每一個(gè)返回處要注意使用defwindowproca函數(shù) 如圖
ps:defwindowproca函數(shù)的第一個(gè)參數(shù)為句柄,一定要用回調(diào)函數(shù)里面的參數(shù)1的值,不要用其他的,否則會(huì)創(chuàng)建窗口失敗
創(chuàng)建子程序”創(chuàng)建窗口“
在這里面最重要的就是使用dll”createwindow“函數(shù)了
其參數(shù)里面的第二個(gè)參數(shù)”類名“,即為之前創(chuàng)建的全局變量”類名“;
參數(shù)”模塊句柄“,即是前面定義的全局變量”模塊句柄“
第三個(gè)參數(shù)為窗口標(biāo)題,即顯示在窗口標(biāo)題欄的東西;
其他參數(shù)”菜單句柄“、”父窗口句柄“、”附加參數(shù)“皆可為0
寫啟動(dòng)子程序(即系統(tǒng)自行創(chuàng)建的那個(gè)子程序),如圖
定義好全局變量的值
7
以上ok后,點(diǎn)擊菜單欄的”程序“點(diǎn)擊”配置“,將”windows控制臺(tái)程序“更改為”windows窗口程序“。
新聞熱點(diǎn)
疑難解答