基于WinCE的高速工業(yè)繡花機(jī)人機(jī)界面設(shè)計(jì)與實(shí)現(xiàn)
在CTabSheet類中用到AddPage方法,用于記錄子對話框的指針和所使用對話框資源的ID號。在使用AddPage加入了若干子對話框后,調(diào)用CTabSheet的Show方法來真正生成標(biāo)簽和子對話框。生成好標(biāo)簽和子對話框后,調(diào)用CTabSheet∷SetRect()函數(shù)來計(jì)算并調(diào)整屬性頁的大小。在單擊標(biāo)簽欄后,應(yīng)該是相應(yīng)的子對話框顯示,正在顯示的子對話框應(yīng)該隱藏。因此利用ClassWizard來處理WM_LBUTTONDOWN消息。這樣利用CTabSheet類就可以輕松地在對話框上放置自己的屬性頁了,并且控件都分散在各子對話框類中,符合對象封裝的思想。而且用這個方法來制作屬性頁就可以利用ClassWizard來輕松地生成消息映射處理Tab Control的消息了。使用這個類,可以將參數(shù)設(shè)置各頁面的封裝對象關(guān)聯(lián)起來,起到分頁顯示作用。每個頁面使用一個類來封裝數(shù)據(jù)成員和成員函數(shù)。應(yīng)用程序中操作的對象可以是連續(xù)的,即應(yīng)用程序退出時將用戶數(shù)據(jù)保存到磁盤上,在程序重新啟動時恢復(fù)它們,這個保存和恢復(fù)的過程稱為串行化。MFC中有一個特定類CSerialize,支持對象的串行化。并利用CArchive類對象作為執(zhí)行串行化對象和存儲介質(zhì)之間的中繼,執(zhí)行串行化的對象可以使用CArchive類對象進(jìn)行讀寫操作。參數(shù)設(shè)置界面中用到的全局變量包含在2個從CObject類派生的CDesignParams和CGlobalV中,使用這2個類中的重載成員函數(shù)CGlobalV∷Serialize(CAr-chive& ar)、CDesignParams∷Serialize(CArchive& ar)進(jìn)行實(shí)際的串行化操作。通過以上的串行化技術(shù)就可以保存參數(shù)設(shè)置中用戶設(shè)置的參數(shù),在程序退出時這些參數(shù)設(shè)置可以被存儲,程序啟動后被讀入。參數(shù)設(shè)置界面的實(shí)現(xiàn)如圖4所示。
3.4 磁盤管理模塊
磁盤管理界面是使用一個CDiskManagement類來封裝花樣管理界面中用到的數(shù)據(jù)成員和成員函數(shù)。用戶通過觸摸屏進(jìn)行操作時,系統(tǒng)的消息循環(huán)隊(duì)列中會產(chǎn)生相應(yīng)的消息。根據(jù)消息中的窗口句柄,系統(tǒng)將消息發(fā)送到目標(biāo)窗口,并自動啟動相應(yīng)的窗口過程函數(shù)來響應(yīng)。當(dāng)用戶點(diǎn)擊“輸入花樣文件”按鈕,將調(diào)用花樣拷貝函數(shù)進(jìn)行花樣格式轉(zhuǎn)換、縮略圖的生成并保存到機(jī)器內(nèi)存。點(diǎn)擊其他的按鈕亦將產(chǎn)生相應(yīng)的功能操作。磁盤管理界面的實(shí)現(xiàn)如圖5所示。
4 測試與結(jié)論
人機(jī)界面作為人與高速工業(yè)繡花機(jī)信息交互的樞紐,必須將機(jī)器信息實(shí)時、準(zhǔn)確而且容易識別的方式傳遞給機(jī)器操作人員,才能達(dá)到人與機(jī)器的最佳配合。而基于Windows CE操作系統(tǒng)制作的人機(jī)界面能夠很好地滿足這個要求并提供更美觀、更友好和人性化的界面,它將在嵌入式產(chǎn)品中應(yīng)用越來越廣泛。
評論