999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用C#開發(fā)電子病歷系統(tǒng)體溫圖

2008-04-12 00:00:00阮子杰陸向艷
現(xiàn)代電子技術(shù) 2008年12期

摘 要:電子病歷系統(tǒng)是一個(gè)高新科技項(xiàng)目,體溫是電子病歷系統(tǒng)中一個(gè)重要的數(shù)據(jù)。介紹基于C#語言的電子病歷系統(tǒng)的總體結(jié)構(gòu)及電子病歷系統(tǒng)中體溫圖的開發(fā)和實(shí)現(xiàn),重點(diǎn)介紹利用C#實(shí)現(xiàn)該體溫圖的過程,對(duì)如何利用.NET基類集組成的GDI+實(shí)現(xiàn)體溫曲線圖的設(shè)計(jì)思想和關(guān)鍵技術(shù)進(jìn)行詳細(xì)的闡述,并給出相關(guān)的源代碼。

關(guān)鍵詞:電子病歷系統(tǒng);體溫圖;C#;GDI+

Development of the Temperature Graph of Electronic Medical Record System Using C#

YANG Liu,RUAN ijie,LU Xiangyan

(School of Computer and Electronics and Information,Guangxi University,Nanning,530004,China

Abstract:Electronic medical record system is a new science and technology project.The data of temperature is very important.The overall frame of electronic medical record system based on C# is introduced.The process of development of the temperature graph using C# is emphasize.The design thinking,main technical of the development of the temperature curve graph using GDI+ are discessed,and some main source code is also given.

eywords:electronic medical record system;temperature graph;C#;GDI+

電子病歷(Electronic Medical Record,EMR系統(tǒng)是一個(gè)數(shù)字技術(shù)、計(jì)算機(jī)技術(shù)、通訊技術(shù)、軟件工程、圖形圖像綜合技術(shù)等多學(xué)科的高新科技項(xiàng)目。其完整資料、數(shù)據(jù)處理、網(wǎng)絡(luò)傳輸、診療支援、統(tǒng)計(jì)分析等均是紙質(zhì)病歷無法比擬的[1-3]。

體溫是電子病歷系統(tǒng)中一個(gè)重要的數(shù)據(jù),比如某病人體溫升高可以讓臨床醫(yī)生知道該病人有發(fā)熱的癥狀。在電子病歷系統(tǒng)中,體溫單所針對(duì)的用戶是醫(yī)院的護(hù)士。護(hù)士每天記錄病人的體溫等各項(xiàng)信息,錄入到數(shù)據(jù)庫(kù)中,系統(tǒng)自動(dòng)生成電子體溫單,并繪制成曲線圖。體溫曲線圖直觀地顯示了病人的體溫等相關(guān)數(shù)據(jù),這些數(shù)據(jù)與有關(guān)疾病和治療的知識(shí)相結(jié)合,可作為進(jìn)一步診斷及確定治療方案的基礎(chǔ)。

筆者參與開發(fā)的電子病歷系統(tǒng)根據(jù)某大型醫(yī)院的實(shí)際需求,在.NET平臺(tái)下全程采用C#語言開發(fā)實(shí)現(xiàn)。本文著重介紹電子病歷系統(tǒng)中體溫曲線圖的設(shè)計(jì)和實(shí)現(xiàn)。

1 電子病歷系統(tǒng)主要功能

本系統(tǒng)根據(jù)醫(yī)院的實(shí)際需求,最主要的目的是采集病人的數(shù)據(jù),使之能為臨床醫(yī)生提供所需要的診斷和決策信息,更進(jìn)一步的目的是這些信息能夠用于臨床科研。系統(tǒng)主要功能如圖1所示。

2 體溫曲線圖的設(shè)計(jì)與實(shí)現(xiàn)

2.1 體溫表的生成

在電子病歷系統(tǒng)中,每個(gè)來院就診的病患在醫(yī)院就診期間會(huì)產(chǎn)生一個(gè)病歷號(hào),這是標(biāo)志病人的確定碼,通常在數(shù)據(jù)庫(kù)系統(tǒng)中也作為惟一的對(duì)應(yīng)碼和關(guān)鍵字。病人入院后,護(hù)士對(duì)病人進(jìn)行體溫、脈搏、呼吸等各個(gè)方面的檢測(cè),將這些數(shù)據(jù)錄入到電子病歷系統(tǒng)中,系統(tǒng)則自動(dòng)生成體溫單。

在病人的體溫單中,需要記錄并分析病人的體溫變換情況。體溫單信息的“體溫”、“脈搏”、“呼吸”這三項(xiàng)信息是要每隔4個(gè)小時(shí)記錄1次,分別在4時(shí)、8時(shí)、12時(shí)、16時(shí)、20時(shí)、24時(shí)這幾個(gè)時(shí)間段。而“大便次數(shù)”、“小便次數(shù)或量”、“攝入量”、“排出量”、“血壓”、“體重”等信息是1天記錄1次。根據(jù)體溫單信息,以1天為1個(gè)單位,畫出1天內(nèi)病人在各個(gè)時(shí)間段的“體溫”、“脈搏”、“呼吸”的曲線變化情況,以及記錄的“大便次數(shù)”、“小便次數(shù)或量”、“攝入量”、“排出量”、“血壓”、“體重”等信息。整個(gè)體溫圖1次只顯示7天的情況。在體溫圖中用坐標(biāo)以及曲線描述病人體溫的連續(xù)變化情況,直觀地滿足了護(hù)士對(duì)患者的體溫、呼吸、脈搏等信息的錄入和查詢的需要。圖2是體溫單顯示界面。

2.2 體溫圖的繪制

體溫圖是根據(jù)體溫單的數(shù)據(jù)自動(dòng)生成的。由于體溫圖每次只顯示病人7天的體溫變化情況,所以設(shè)計(jì)了翻頁(yè)的功能,對(duì)住院時(shí)間久的病人通過翻頁(yè)每次跳過7天,保證病人的體溫信息完整的顯示。

2.2.1 C#的GDI+繪圖

體溫圖的繪制由.NET基類集組成的GDI+實(shí)現(xiàn)[4],這些基類可用于在屏幕上完成定制繪圖,能把合適的指令發(fā)送到圖形設(shè)備的驅(qū)動(dòng)程序上,確保在顯示器屏幕上顯示正確的輸出。

在GDI中,識(shí)別輸出設(shè)備的方式是使用對(duì)象設(shè)備環(huán)境(DC。該對(duì)象存儲(chǔ)特定設(shè)備的信息,并能把GDI API函數(shù)調(diào)用轉(zhuǎn)換為要發(fā)送給該設(shè)備的指令。實(shí)現(xiàn)畫圖的功能要使用到GDI+畫圖技術(shù)。通過重寫Form類中的OnPaint(PaintEventArgs e執(zhí)行畫圖操作。

在OnPaint(中,首先從PaintEventArgs中引用Graphics對(duì)象,繪制圖形。最后調(diào)用基類的OnPaint(方法。

在應(yīng)用程序第一次啟動(dòng),窗口第一次顯示出來時(shí),也調(diào)用了OnPaint(,所以不需要在構(gòu)造函數(shù)中復(fù)制繪圖代碼。由于整個(gè)體溫圖比較大,而顯示窗口定為800×600,為了能完整顯示體溫圖文檔,需要在文檔超出窗口時(shí),通知窗口在右側(cè)出現(xiàn)滾動(dòng)條。為此,把整個(gè)文檔區(qū)域定為(800,1 886像素,并在窗體設(shè)計(jì)器的屬性中把AutoScroll屬性設(shè)置為True。這樣,在體溫圖超過窗口時(shí)自動(dòng)出現(xiàn)滾動(dòng)條。

2.2.2 絕對(duì)坐標(biāo)到相對(duì)坐標(biāo)的變換

在一般的繪圖代碼中,由于所繪制的圖形區(qū)域一般不超過窗口的大小,所以不需要特別的注意。Graphics實(shí)例在默認(rèn)情況下把坐標(biāo)解釋為是相對(duì)于窗口的,它并不知道滾動(dòng)條的情況。當(dāng)用戶滑動(dòng)滾動(dòng)條時(shí),Windows沒有要求應(yīng)用程序重新繪制已經(jīng)顯示在屏幕中的內(nèi)容。Windows只指出屏幕上目前顯示的內(nèi)容可以平滑的移動(dòng),以匹配滾動(dòng)條的位置。對(duì)于多出來的文檔部分,在應(yīng)用程序第一次顯示時(shí),沒有繪制這部分窗口,因?yàn)樵跐L動(dòng)窗口前,這部分在窗口區(qū)域的外部。這表示W(wǎng)indows要求ScrollShapes應(yīng)用程序繪制這個(gè)區(qū)域。它將引發(fā)Paint事件,把這個(gè)區(qū)域作為剪切的矩形,在窗口中和原來的圖形一起顯示出來,這樣會(huì)出現(xiàn)一個(gè)窗口中有多個(gè)圖形重疊,造成圖形的混亂。

解決的方法是把Graphics實(shí)例默認(rèn)的坐標(biāo)表示為相對(duì)坐標(biāo),即坐標(biāo)是相對(duì)于窗口的左上角,而不是文檔開頭的左上角,把絕對(duì)坐標(biāo)轉(zhuǎn)換為相對(duì)坐標(biāo)。這里用圖3說明這一轉(zhuǎn)換。

實(shí)線矩形標(biāo)記了屏幕區(qū)域的邊框和整個(gè)文檔的邊框。虛線矩形標(biāo)記了試圖要繪制的矩形和橢圓。P標(biāo)記要繪制的某個(gè)隨意點(diǎn)。在調(diào)用繪圖方法時(shí),提供Graphics實(shí)例和從A點(diǎn)到P點(diǎn)的矢量,整個(gè)矢量表示為一個(gè)Ponit實(shí)例。而實(shí)際上需要的是從點(diǎn)B到點(diǎn)P的矢量。問題是,這里只知道從A點(diǎn)到P點(diǎn)的矢量,這是P相對(duì)于文檔左上角的坐標(biāo),而要在文檔的P點(diǎn)繪圖。另外還知道從A點(diǎn)到B點(diǎn)的矢量,這是滾動(dòng)的距離,它儲(chǔ)存在Form類的一個(gè)屬性AutoScrollPosition中。要知道從B點(diǎn)到P點(diǎn)的矢量只需要進(jìn)行矢量相減即可。Graphics類的TranslateTransform方法可以進(jìn)行這些矢量的計(jì)算。這里給它傳送水平和垂直坐標(biāo),表示窗口驅(qū)譴、與的左上角相對(duì)于文檔的左上角的矢量(AutoScrollPosition屬性,它是圖中從A到B的矢量,然后Graphics設(shè)備考慮窗口區(qū)域相對(duì)于文檔區(qū)域的位置,處理這些坐標(biāo)。只要在繪圖代碼中加入以下語句:g.TranslateTransform(this.AutoScrollPosition.X,this.AutoScrollPosition.Y;即可解決坐標(biāo)轉(zhuǎn)換的問題。

2.2.3 體溫圖的繪制技術(shù)

體溫圖的繪制根據(jù)體溫單中病人的相關(guān)信息,利用才C#的GDI+可以繪制出相應(yīng)的體溫曲線圖。在程序中首先進(jìn)行絕對(duì)坐標(biāo)和相對(duì)坐標(biāo)的變換,然后用Pen類定義畫筆,用Brush類定義畫刷顏色,對(duì)于需要填充的地方用畫刷進(jìn)行填充,再調(diào)用Graphics類的DrawLine方法畫出所需的線條。在DrawLine方法中,需要提供畫筆類型,線段起點(diǎn)和終點(diǎn)坐標(biāo)等參數(shù)。

體溫圖初始化之后,根據(jù)從體溫表傳遞的病人編號(hào)作為體溫圖中的全局變量,對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,并把查詢結(jié)果轉(zhuǎn)換為坐標(biāo),傳遞給畫圖方法DrawLine和FillEllipse,畫出圖形。圖4是一張?bào)w溫圖顯示界面。

2.2.4 體溫圖中翻頁(yè)的實(shí)現(xiàn)

由于體溫圖每次只顯示病人1周的體溫變換信息,要顯示1周之前的體溫信息,可以使用翻頁(yè)功能。實(shí)現(xiàn)翻頁(yè)功能主要利用在讀取數(shù)據(jù)時(shí)使用到的Read(方法的特性。通過Read(方法在讀取數(shù)據(jù)的同時(shí)把當(dāng)前的指針向下移動(dòng)1位。最初它位于數(shù)據(jù)集的第一行之前,因此第一次調(diào)用Read(將把指針置于第一行上,使它成為當(dāng)前行。隨著每次調(diào)用Read(導(dǎo)致指針向下移動(dòng),按照從上至下的次序獲取數(shù)據(jù)集行。代碼如下:

for(i=0;i<(this.n-1*7;i++]

{ if(n==1 break;

else reader.Read(;

}

for(i=0;i<7;i++

{ if(reader.Read(

array[i]=reader[\"riqi\"].ToString(.Trim(;

else array[i]=1;

}

其中變量n為全局變量,由翻頁(yè)按鈕對(duì)其進(jìn)行賦值。以當(dāng)前的變量n減1乘7為所需跳過的間隔數(shù),以日期為單位,對(duì)數(shù)據(jù)集中的日期進(jìn)行篩選,選出這一周的日期儲(chǔ)存到數(shù)組array中。

3 結(jié) 語

電子病歷是醫(yī)院信息化發(fā)展的必然趨勢(shì)。根據(jù)HL7 的標(biāo)準(zhǔn)化要求[5],當(dāng)前國(guó)內(nèi)電子病歷的研究還很不完善,要制定出比較完善的適應(yīng)國(guó)內(nèi)醫(yī)院使用的電子病歷原型系統(tǒng)還需要更深入的研究。本文探討利用C#繪制電子病歷系統(tǒng)體溫圖的技術(shù),試圖對(duì)完善電子病歷系統(tǒng)做有益的嘗試。電子病歷系統(tǒng)相關(guān)的研究?jī)?nèi)容將會(huì)不斷發(fā)展和深入,而電子病歷的技術(shù)構(gòu)架和軟件流程也將會(huì)越來越成熟。

參 考 文 獻(xiàn)

[1]HIMSS Electronic Health Record Committee.HIMSS electronic Health Record Definitional Model Version 1.1,2003.

[2]薛萬國(guó).我國(guó)電子病歷研究進(jìn)展[J].信息管理,2005,25(2:17-19.

[3]肖強(qiáng),吳偉斌,陳聯(lián)忠.電子病歷系統(tǒng)的主要實(shí)現(xiàn)技術(shù)[J].中華醫(yī)院管理雜志,2004,20(4:207-209.

[4]Chris H.Pappas W.C#精髓[M].北京:人民郵電出版社,2002.

[5]Todd Freter.HL7 ebXML Demonstration Overview.Introduction for HL7[R].XML Technology Center,Industry Initiatives,Sun Microsystems Inc,2001.

[6]于津,揭策,律亞楠,等.基于MML電子病歷存儲(chǔ)模型研究[J].現(xiàn)代電子技術(shù),2007,30(20;134-136,139.

主站蜘蛛池模板: 午夜小视频在线| 香蕉伊思人视频| AV无码无在线观看免费| 亚洲色图综合在线| 欧美色香蕉| 视频在线观看一区二区| 高潮毛片免费观看| 亚洲欧美人成人让影院| 国产欧美视频一区二区三区| 日本成人福利视频| 国产香蕉在线| 国产精品九九视频| 麻豆精品在线视频| 久久精品女人天堂aaa| av性天堂网| 一本大道香蕉高清久久| 99精品在线看| 免费jjzz在在线播放国产| 亚洲免费成人网| 中文字幕欧美日韩高清| 国产jizz| 午夜在线不卡| 在线观看视频99| 日本尹人综合香蕉在线观看 | 亚洲欧美成人影院| 免费国产无遮挡又黄又爽| 欧美日韩精品在线播放| 国外欧美一区另类中文字幕| 欧美日本在线观看| 九九香蕉视频| 欧美三级日韩三级| 自拍亚洲欧美精品| 青青青国产视频手机| 精品视频在线一区| 亚洲va在线观看| 最新国语自产精品视频在| 日韩av手机在线| 国产激情无码一区二区免费| 国产久草视频| 久久精品亚洲热综合一区二区| 久久特级毛片| 亚洲熟妇AV日韩熟妇在线| 人妻中文字幕无码久久一区| 精品人妻一区二区三区蜜桃AⅤ| 欧美日韩导航| 91久久国产热精品免费| 亚洲电影天堂在线国语对白| 永久成人无码激情视频免费| 精品少妇人妻一区二区| 99re经典视频在线| 国产精品国产三级国产专业不| 亚洲欧美日韩中文字幕一区二区三区| 亚洲自拍另类| 一级在线毛片| 亚洲无码在线午夜电影| 91麻豆精品国产高清在线| 欧美成人A视频| 欧美精品1区| 国产精品9| 91欧美在线| 毛片网站免费在线观看| 伊在人亚洲香蕉精品播放 | 国产香蕉97碰碰视频VA碰碰看| 永久成人无码激情视频免费| 国产亚洲欧美日韩在线一区二区三区| 精品無碼一區在線觀看 | 国产成人AV男人的天堂| 女人18一级毛片免费观看| 一区二区三区四区日韩| 91福利免费视频| 欧美日韩中文国产| 激情乱人伦| 亚洲国产成人精品一二区| 国产特级毛片| 亚洲欧美日韩成人高清在线一区| 国产自在线播放| www.国产福利| 亚洲精品在线影院| 国产自视频| 亚洲三级a| 天堂在线www网亚洲| 91麻豆久久久|