1. 程式人生 > >【安富萊二代示波器教程】第4章 示波器設計—主界面布局和框架

【安富萊二代示波器教程】第4章 示波器設計—主界面布局和框架

font 實現 總結 代碼 波形 進入 新版 坐標 forum

第4章 示波器設計—主界面布局和框架

本章簡單為大家說明主界面的布局和框架。

4.1 主界面框架選擇

4.2 主界面布局

4.3 總結

4.1 主界面框架選擇

emWin主界面框架主要有三種(當然,還有很多其它種類,我們這裏僅說明以下三種):

第1種類似ATM機操作界面

大家在ATM機取錢的時候應該都有印象,ATM機有一個主界面,然後一路點擊下去,直到把錢取出來,退出後回到主界面。這種形式簡單總結下就是多級窗口之間任意切換,刪除之前的窗口,創建新窗口,這裏有個演示效果,讓大家有個感性認識:http://bbs.armfly.com/searcher.php 。

第2種類似電腦端,手機端的主界面

這種方式有一個主界面,主界面上面有很多圖標,點擊某個圖標進入功能界面,這個功能界面也可以有多級子界面,比如我們STM32-V6開發板的綜合Demo就是這種形式:http://bbs.armfly.com/read.php?tid=17330 。想返回到主界面,直接關閉這些子界面即可。

第3種采用隱藏和顯示的方式

這種方式簡單實用,系統啟動後先把所有需要顯示的窗口全部創建好,並用函數WM_HideWindow將這些窗口全部隱藏起來,需要顯示哪個窗口的時候,調用函數WM_ShowWindow即可,缺點是所有的窗口要一直占用著內存。

二代示波器的界面是在第二種方案的基礎上實現的,不同的是需要我們在桌面窗口上刷新波形。之所以在桌面窗口上刷新,而沒有選擇在子窗口上刷新,主要是方便程序操作。具體的代碼實現會在後面章節講解。

知識點拓展

新版emWin教程第64章:STemWin多個窗口切換方法:http://forum.armfly.com/forum.php?mod=viewthread&tid=19834 。

4.2 主界面布局

emWin主界面布局如下:

技術分享圖片

設計這個界面的布局耽誤了很多時間,一方面是界面各個窗口的位置調整,還有界面效果的優化。最主要的原因還是emWin配套的GUIBuilder功能太弱,不支持這種類型的主界面建立。所以這個時候有個美工幫我們把界面布局做好就尤其重要了,特別是每個窗口和控件的坐標位置也給標出來。

主界面主要分為以下幾部分:

(1)桌面窗口,主要用於波形顯示區。

(2)五個圓角矩形對話框。

(3)右上角的五個按鈕,每個按鈕都可以獨立打開一個對話框,用於示波器控制,比如按下DAC按鈕,彈出的這個界面主要用於信號發生器設置。

技術分享圖片

4.3 總結

本章節主要把主界面框架和布局為大家做了一個簡單介紹,方便後續章節的學習。

【安富萊二代示波器教程】第4章 示波器設計—主界面布局和框架