基于WPF的醫(yī)療輔助軟件設(shè)計與開發(fā)
基于WPF的醫(yī)療輔助軟件設(shè)計與開發(fā)
本文引用地址:http://m.butianyuan.cn/article/198913.htm無錫尚沃生物科技有限公司開發(fā)了應用于呼吸系統(tǒng)檢測儀器“納庫侖一氧化氮分析儀”,產(chǎn)品在投入市場后,發(fā)現(xiàn)兒童在使用儀器時與成人有很大的不同,存在不配合性、數(shù)據(jù)采集時間不同等情況。企業(yè)急需一套能夠被醫(yī)療兼容,又能夠讓不同年齡段的兒童適用的軟件。根據(jù)企業(yè)提出的相關(guān)業(yè)務(wù)需求,并且為配合醫(yī)療儀器的使用,開發(fā)制作的側(cè)重點在于開發(fā)出一些適合于兒童,并帶有簡單游戲性質(zhì)的故事情節(jié)的游戲軟件。為此,我們選擇了Visual Studio 2010下的WPF(Windows Presentation Foundation)技術(shù)。本文對WPF以及WPF在項目中的實際運用進行了介紹。
1、WPF體系架構(gòu)及特點
WPF的全稱是Windows Presentation Foundation,是未來十年里Windows平臺GUI開發(fā)的最主要的技術(shù)之一。它是微軟開發(fā)的一款基于.NET(目前最新版本為.NET Framework 4.0)平臺的最新的軟件界面顯示系統(tǒng)。為用戶界面、文檔和多媒體等等,提供了統(tǒng)一的描述和操作方法。而相對于以往的通用編程方式GDI(Graphics Device Interface),這個已經(jīng)應用于十多年的技術(shù)在.NET框架中已經(jīng)被微軟進行了多次的擴充,但是對它的種種擴充已經(jīng)不能很好的滿足當前軟件開發(fā)中對越來越復雜、越來越趨向于完美的軟件界面的需求,為了在完成相同界面時能夠達到更好的效果,同時也為了能夠滿足下一代操作系統(tǒng)的兼容。為此,發(fā)布了這一新的程序界面開發(fā)技術(shù)。
1.1 WPF體系架構(gòu)
WPF主要是由Presentation Framework、Presentation Core和mil core三層組件構(gòu)成,它們是WPF的子系統(tǒng)。其中Presentation Framework、Presentation Core這兩者是托管組件,而mil core卻是非托管組件。而托管組件Presentation Core提供了像事件處理、布局等一系列的功能。在組件Presentation Core提供的基本功能上,組件Presentation Framework實現(xiàn)了WPF的各種外觀,例如圖像效果的實現(xiàn)、按鈕控件的實現(xiàn)等.而非托管的mil core是以非托管代碼來編寫的,其目的是實現(xiàn)與DirectX的交互,從而來提高效率。體系架構(gòu)中的User32、DirectX和Kernel是Windows子系統(tǒng)。如WPF應用程序運行過程圖1所示。
1.2 XAML語言
XAML是eXtensible Application Markup Language縮寫,名為可擴展應用程序標記語言。從名稱可以看出它是一種標記語言,也就意味著它具有其他標記語言所具有的諸多特點。 XAML是微軟創(chuàng)建的一款新的描述性語言用來構(gòu)建應用程序用戶界面,即用來編寫WPF(Windows Presentation Foundation) 的應用程序。XAML引入了XML中的名字空間、屬性等多個元素,即XAML是基于XML的。并且它和XML的使用方式很接近,所以對XAML來說它本身就是一個很好的XML文檔。
在以往的程序編寫中,我們常常為使內(nèi)部數(shù)據(jù)與界面很好的聯(lián)系在一起而大傷腦筋,而WPF提供了數(shù)據(jù)綁定這一有效的方法,從而很好的解決了這一難題。在XAML中使用數(shù)據(jù)綁定,而使用數(shù)據(jù)綁定的關(guān)鍵就是去創(chuàng)建System.Windows.Data.Binding這樣一個實例對象。當然,該對象也可以在C#中被創(chuàng)建。數(shù)據(jù)綁定其實是使界面顯示的數(shù)據(jù)值與內(nèi)部數(shù)據(jù)值保持相同,而數(shù)據(jù)綁定這一功能的使用,使得我們項目組的開發(fā)人員在很大程度上提高項目開發(fā)工作的效率。
1.3 Microsoft Expression Blend
Microsoft Expression Blend是一個全新的、全功能的專業(yè)設(shè)計工具,用于創(chuàng)造基于Microsoft Windows平臺的易于使用且豐富的應用界面。使用它的首要和最終目的是作為一種可應用于WPF的設(shè)計界面工具。Microsoft Visual Studio 可以與Microsoft Expression Blend 完美的相結(jié)合在一起使用.Expression Blend 自動生成 WPF應用程序,也就是說,所顯示的界面設(shè)計都可以由XAML代碼來表示。當然,也可以將可擴展應用程序標記語言(XAML)導入到Expression Blend設(shè)計界面中。
2、WPF應用程序在實際開發(fā)項目中的運用
基于WPF的特點以及相關(guān)技術(shù),本文創(chuàng)建了醫(yī)療輔助系統(tǒng)軟件項目。下面介紹利用Microsoft Expression Blend創(chuàng)建醫(yī)療輔助系統(tǒng)應用程序的基本過程。
(1)打開Microsoft Expression Blend,并新建名為Balloon的項目。
(2)我們進入了Microsoft Expression Blend的工作區(qū),打開工具箱,添加背景(backimage)圖片、氣球(balloonimage)圖片、滑動軸(silder)控件、提示使用者檢測失敗的文本(txbfailed)控件和
成功的文本(txtSucessed)控件、移動路徑([path])、設(shè)置下拉菜單(MenuItem)、設(shè)置下拉菜單下的起始無效時間(Startinvalid)控件和成功時間(Succeedtimer)控件、開始按鈕(btnStart)控件等。初始狀態(tài)下令文本txbfailed控件可見,設(shè)計應用程序界面。
(3)Microsoft Expression Blend將自動生成 Windows Presentation Foundation (WPF)應用程序,是由 XA代碼來表示的。在成功的添加諸多控件的基礎(chǔ)上,并在代碼窗口里實現(xiàn)事件響應代碼的編寫。
(4)應用程序運行效果。開始檢測時,進入游戲系統(tǒng)界面,點擊設(shè)置下拉菜單(MenuItem),設(shè)定下拉菜單下的起始無效時間(Startinvalid)和成功時間(Succeedtimer)的有效值,例如,起始無效時間為2秒,成功時間為5秒。點擊開始按鈕(btnStart),根據(jù)吹氣時的氣量大小,滑動軸(silder)左右移動。當氣量小時,滑動軸(silder)向左移動,同時氣球降落;當氣量大時,滑動軸(silder)向右移動,氣球上升。成功時間達到已設(shè)定的有效值時,提示使用者檢測成功的文本(txtSucessed);相反,當成功時間未達到已設(shè)定的有效值時,提示使用者檢測失敗的文本(txbfailed),當兒童完成游戲的同時,完成了檢測。利用Microsoft Expression Blend技術(shù)可以使得WPF應用程序更加方便、更加出色的完成。
3、結(jié)語
WPF給Windows應用程序的開發(fā)帶來一次劃時代的革命,它提供了一種全新的、全功能的開發(fā)模式。為企業(yè)的醫(yī)療儀器提供這一相配套的兒童檢測軟件,可以使得不同年齡段的兒童克服不安定心理,更好的配合醫(yī)療檢測,從而提高治療的效果,并增加了企業(yè)儀器的新服務(wù)人群,開拓了新的醫(yī)療市場。
更多醫(yī)療電子信息請關(guān)注:21ic醫(yī)療電子頻道
評論