曲廣強,關(guān)曉輝,楊永清,劉冬云,孫 悅
(東北電力大學教務處,吉林吉林132012)
高校教學管理信息量大、覆蓋面廣,為了方便及時與廣大師生交流信息,我們開發(fā)了一套基于多媒體電子觸摸屏的“高校教學管理信息查詢系統(tǒng)”,以往學生在教學樓內(nèi)需要通過紙質(zhì)課表或者逐個教室查找才能了解上課情況以及找到空閑教室,通過在教學樓大廳放置的觸摸屏以及教學信息查詢系統(tǒng),廣大師生可快捷地查到所需要的信息。
WPF為Windows Presentation Foundation的縮寫,意思是基于windows的圖形界面處理,WPF[1]是微軟新一代圖形系統(tǒng),運行在.NET Framework 3.0架構(gòu)下,為用戶界面、2D/3D圖形、文檔和媒體提供了統(tǒng)一的描述和操作方法。基于DirectX 9/10技術(shù)的WPF不僅帶來了前所未有的3D界面,而且其圖形向量渲染引擎也大大改進了傳統(tǒng)的2D界面,比如Vista中的半透明效果的窗體等都得益于WPF。程序員在WPF的幫助下,要開發(fā)出媲美Mac程序的酷炫界面已不再是遙不可及的奢望。WPF相對于Windows客戶端的開發(fā)來說,向前跨出了巨大的一步,它提供了超豐富的.NET UI框架,集成了矢量圖形,豐富的流動文字支持flow text support,3D視覺效果和強大無比的控件模型框架。
系統(tǒng)的主要服務對象為全校師生,根據(jù)用戶的使用需求并結(jié)合教務系統(tǒng)的實際情況,系統(tǒng)的主要功能模塊如圖1所示。
“二教課程查詢”和“三教課程查詢”模塊可以為師生提供第二教學樓和第三教學樓每個教室的課程信息,包括上課時間和上課教師信息;“課程課表查詢”模塊可以根據(jù)每一門課程查詢該課程的上課教室、任課老師及開課時間;“我要上自習”模塊專門為要上自習的學生提供支持,可快捷地找到當天第二教學樓和第三教學樓空余教室的信息,見圖1。
高校教學信息查詢系統(tǒng)主要由觸摸屏、Web服務和數(shù)據(jù)庫三部分組成。我校的觸摸屏教學信息查詢系統(tǒng)通過觸摸屏內(nèi)的軟件系統(tǒng),訪問遠程的Web服務器,通過網(wǎng)絡即時地將數(shù)據(jù)庫的信息提取出來,顯示在觸摸屏屏幕上,用戶可以手動點擊進行各種信息[2]的查詢。
圖1 系統(tǒng)功能模塊圖
圖2 系統(tǒng)結(jié)構(gòu)圖
根據(jù)本系統(tǒng)的功能設(shè)計要求,系統(tǒng)需要從教務管理系統(tǒng)讀取數(shù)據(jù)。根據(jù)安全性、可靠性和低耦合原則,系統(tǒng)不應從其他應用系統(tǒng)直接讀取數(shù)據(jù)庫,而應該選擇使用一定的中間接口,如WebService。本系統(tǒng)采用微軟的Windows Communication Foundation(WCF)技術(shù),為現(xiàn)有的教務管理系統(tǒng)開發(fā)了數(shù)據(jù)接口。WCF是由微軟發(fā)展的一組數(shù)據(jù)通信的應用程序開發(fā)接口,可以翻譯為Windows通訊接口,它是.NET框架的一部分,由.NET Framework 3.0開始引入。WCF集合了大部分.NET Framework所提供的通信方式(如Web Service、.NET Remoting以及最基礎(chǔ)的Winsock等通信技術(shù)),通信雙方的溝通方式,由合約來訂定。通信雙方所遵循的通信方法,由協(xié)議綁定來訂定。通信期間的安全性,由雙方約定的安全性層次來訂定[3]。
WPF借助XAML來利用標記而不是編程語言(如C#)來構(gòu)造精美逼真的用戶界面(UI)??梢酝ㄟ^定義控件、文本、圖像、形狀、動畫等各種元素,完全采用XAML來制作詳盡的UI文檔。
XAML簡化了.Net Framework 3.0編程模式上的用戶界面創(chuàng)建過程,使用XAML開發(fā)人員可以對WPF程序的所有用戶界面元素(例如文本、按鈕、圖像和列表框等)進行詳細的定置,同時還可以對整個界面進行合理化的布局,這與使用HTML[4]非常相似。但是由于XAML是基于XML的,所以它本身就是一個組織良好的XML文檔,而且相對于HTML,它的語法更嚴謹、更明確。
<Button Name="btnsanjiao"Width="160px"Height="50px"Opacity="0"Click="btnsanjiao_Click">
<Button.RenderTransform>
<TransformGroup>
< RotateTransform Angle="11.154"/>
<TranslateTransform/>
</TransformGroup>
< /Button.RenderTransform>
</Button>
該代碼片斷是一個XAML元素,它包括一個開始標記、一個結(jié)束標記以及這兩個標記之間的內(nèi)容。在第1行代碼處的開始標記中還包含了兩個屬性,這兩個屬性的名稱分別為Name,Width,Height,Opac-ity和Click。我們可以通過"="號給這些屬性賦與一個相應的值,根據(jù)XAML的語法規(guī)則,這些屬性值必須使用雙引號包括起來。開始標記和結(jié)束標記之間則是元素內(nèi)容。
表1 XAML與HTML的對比信息
盡管XAML在元素的聲明、程序樣式的設(shè)置和指定事件處理程序上都和HTML非常類似,但是XAML是基于XML的,它是WPF的外在表現(xiàn)形式。而HTML主要是一種標記語言,僅僅是用來為瀏覽器呈現(xiàn)頁面內(nèi)容。
WPF最重要的特色是對于矢量圖的超強特性,具有靈活、易擴展的動畫機制。兼容支持2D繪圖,比如矩形、自定義路徑,位圖等。文字顯示的增強,XPS和消鋸齒。三維強大的支持。包括3D控件級及事件,與2D及視頻合并打造更立體效果。
這段代碼是一個字符浮動的動畫。<TextBlock.Triggers>表示TextBlock的觸發(fā)事件,RoutedEvent="Button.Click"表示當鼠標按鈕按下時觸發(fā)TextBlock的觸發(fā)事件,去執(zhí)行特定的動畫效果。
圖3 首頁界面圖
(1)教室信息的查詢。這里僅以“三教教室課表查詢”為例,查詢當天全課時每一個教室的課程安排,并以圖形的形式展現(xiàn)給師生,一目了然。主要查詢代碼如下:
圖4 教室信息查詢頁面
圖5 課程查詢頁面
圖6 空閑教室顯示頁面
(2)課程課表查詢。課程課表查詢可以查找全校全部開課課程的具體信息,如“ERP沙盤模擬實驗”,當您在屏幕鍵盤上按下E時,屏幕上會顯示,以E漢語拼音開頭的所有課程,然后點擊具體課程如“ERP沙盤模擬實驗”,屏幕會彈出一個窗口,顯示開課時間,開課教室和開課老師等信息。以下為本界面中按鈕事件代替鼠標滾動事件的主要技術(shù)代碼:
(3)我要上自習。這個功能是特別為需要上自習的學生而設(shè)計的,學生可以根據(jù)自己的具體情況,選擇需要上自習的時間和教學樓,就能很快的找到相應時間段內(nèi)的空閑教室信息。以下是本界面中文字浮動的關(guān)鍵技術(shù)代碼:
為了方便師生的出行,該系統(tǒng)還設(shè)有天氣預報查詢的功能,實時更新當天的天氣情況。天氣預報功能是根據(jù)調(diào)用外網(wǎng)的服務實現(xiàn)的,具體實現(xiàn)方法如下。
(1)getSupportCity
查詢本天氣預報Web Services支持的國內(nèi)外城市或地區(qū)信息。
輸入?yún)?shù):byProvinceName=指定的洲或國內(nèi)的省份,若為ALL或空則表示返回全部城市;返回數(shù)據(jù):一個一維字符串數(shù)組String(),結(jié)構(gòu)為:城市名稱(城市代碼)。
圖7 天氣預報查詢界面
(2)getSupportProvince
獲得本天氣預報Web Services支持的洲、國內(nèi)外省份和城市信息。
輸入?yún)?shù):無;返回數(shù)據(jù):一個一維字符串數(shù)組String(),內(nèi)容為洲或國內(nèi)省份的名稱。
(3)getWeatherbyCityName
根據(jù)城市或地區(qū)名稱查詢獲得未來三天內(nèi)天氣情況、現(xiàn)在的天氣實況、天氣和生活指數(shù)。
調(diào)用方法如下:輸入?yún)?shù):theCityName=城市中文名稱(國外城市可用英文)或城市代碼(不輸入默認為上海市),如:上?;?8367,如有城市名稱重復請使用城市代碼查詢(可通過 getSupportCity或getSupportDataSet獲得);返回數(shù)據(jù):一個一維數(shù)組String(22),共有23個元素。
該系統(tǒng)投入運行后,可以在相關(guān)教學樓全天候安全運行,速度快,穩(wěn)定可靠,信息傳遞迅速、準確,查詢方便、使用靈活,提高了教學管理工作效率,系統(tǒng)經(jīng)過幾年的使用得到了廣大師生的一致好評。
[1]李響.葵花寶典—WPF自學手冊[M].北京:電子工業(yè)出版社.
[2]姜瀚書,梁峰,于旭.數(shù)字化變電站集成保護信息共享通信特性分析研究[J].東北電力大學學報,2014,34(2):66-67.
[3]〔美〕麥克默蒂等.WCF揭秘[M].趙科平,譯.北京:人民郵電出版社,2008:11-16.
[4]楊波,馬秉堯,孫潤元,等.基于WAP的校園信息服務系統(tǒng)設(shè)計與實現(xiàn)[J].大連理工大學學報,2005,45(z1):291-294.