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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

emWin 2天速成实例教程002_多个页面窗口切换

發(fā)布時(shí)間:2024/4/17 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 emWin 2天速成实例教程002_多个页面窗口切换 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

備注:(1)打開(kāi)工程目錄下的"Exe\GUISimulationDebug.exe"即可看到效果。(2)看完教程000~005就基本會(huì)用emWin做項(xiàng)目,其他章節(jié)可以需要時(shí)再參考。
? 用emWin做界面,可以簡(jiǎn)單理解為每個(gè)C文件即對(duì)應(yīng)一個(gè)頁(yè)面,如果要設(shè)計(jì)多個(gè)頁(yè)面的界面怎么辦?生成多個(gè)界面C文件并在回調(diào)函數(shù)的操作觸發(fā)消息中用隱藏/顯示頁(yè)面函數(shù):WM_HideWindow()和WM_ShowWindow()實(shí)現(xiàn)界面切換程序即可。
? 當(dāng)界面有多個(gè)頁(yè)面需要切換顯示時(shí),有兩種方式可以實(shí)現(xiàn):(1)隱藏/顯示方式:程序啟動(dòng)時(shí)創(chuàng)建所有頁(yè)面窗口,程序運(yùn)行時(shí)隱藏當(dāng)前無(wú)需顯示的頁(yè)面,同時(shí)顯示當(dāng)前需要顯示的頁(yè)面;(2)刪除/創(chuàng)建方式:程序啟動(dòng)時(shí)創(chuàng)建開(kāi)機(jī)需要顯示的頁(yè)面窗口,程序運(yùn)行時(shí)刪除當(dāng)前無(wú)需顯示的頁(yè)面,同時(shí)創(chuàng)建當(dāng)前需要顯示的頁(yè)面。
? 這兩種方式的根本區(qū)別是:第(1)種方式由于所有頁(yè)面都是真實(shí)存在的,因此占用更多的內(nèi)存。對(duì)于界面簡(jiǎn)單的應(yīng)用,或者CPU有足夠RAM的情況下,建議使用隱藏/顯示方式,因?yàn)閯h除/創(chuàng)建方式涉及到動(dòng)態(tài)內(nèi)存的申請(qǐng)和釋放,處理不當(dāng)或程序不嚴(yán)謹(jǐn)容易出現(xiàn)內(nèi)存錯(cuò)誤造成死機(jī)現(xiàn)象,而且刪除/創(chuàng)建方式由于切換頁(yè)面時(shí)需要?jiǎng)?chuàng)建窗口,因此切換頁(yè)面時(shí)速度比隱藏/顯示方式更慢些。
? 這里只說(shuō)明通過(guò)隱藏/顯示的方式做頁(yè)面窗口切換,使用到emwin兩個(gè)窗口管理API函數(shù):

? void WM_HideWindow(WM_HWIN hWin);? //隱藏窗口函數(shù),hWin是窗口的句柄
? void WM_ShowWindow(WM_HWIN hWin);? //顯示窗口函數(shù),hWin是窗口的句柄



......
case WM_NOTIFY_PARENT:?//操作觸發(fā)消息處理(程序會(huì)跑到這里),比如點(diǎn)擊按鍵、點(diǎn)擊編輯框(任何的操作)等等......
? Id = WM_GetId(pMsg->hWinSrc);
? NCode = pMsg->Data.v;
? switch(Id) {
? case ID_BUTTON_1://ID為ID_BUTTON_1的按鍵被點(diǎn)擊
? ? switch(NCode) {
? ? ? caseWM_NOTIFICATION_CLICKED:?//按下動(dòng)作消息
? ? ? ? break;
? ? ? caseWM_NOTIFICATION_RELEASED://彈起動(dòng)作消息
? ? ? ? WM_HideWindow(hPage[0]);?//隱藏Page0
? ? ? ? WM_ShowWindow(hPage[1]);//顯示Page1
? ? ? ? break;
? ? ? }
? ? ? break;
? ? }
? ? break;
......




源碼/軟件下載

轉(zhuǎn)載于:https://blog.51cto.com/neqee/2084567

總結(jié)

以上是生活随笔為你收集整理的emWin 2天速成实例教程002_多个页面窗口切换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。