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

VC6.0編輯控件的改進設計

2012-06-14 01:37:58李源泉
無線電工程 2012年2期
關鍵詞:功能信息設計

李源泉,朱 龍

(1.西安電子科技大學,陜西西安710071;2.中國電子科技集團第五十四研究所,河北石家莊050081;3.第二炮兵駐石家莊地區軍事代表室,河北石家莊050081)

0 引言

目前國內S頻段統一測控系統軟件大多采用VC6.0編譯環境,編輯控件等技術手段在監控軟件中被大量使用。VC6.0編譯環境下的普通編輯控件由于不具備輸入信息的判斷功能,需要人工編碼設計實現。在不同的工程實施中,不僅增加軟件編碼工作量,實現方式無法統一,而且往往無法全面滿足設計要求。

通過對VC6.0編譯環境下的普通編輯控件進行改進,使用類封裝的形式,數據處理的消息響應處理機制,形成一種改進的編輯控件。與普通控件相比,改進后的編輯控件在不破壞已有功能的情況下,不僅增加了輸入信息的自動判斷、異常處理功能,而且具備代碼、實現方式統一的優點。因此改進后的編輯控件可以為上述問題的解決提供一種有效技術手段。

1 總體設計

1.1 編輯控件封裝設計

編輯控件需要滿足外部調用靈活和功能管理相對集中的要求,因此在VC6.0編譯環境下,采用面向對象的設計方法,采用類封裝形式,是實現編輯控件全部功能的基本要求。

編輯控件不能破壞原有編輯控件的功能設計,因此在VC6.0編譯環境下,改進編輯控件應充分繼承原有編輯控件類的特點與功能。

1.2 編輯控件功能設計

編輯控件的實現需要提供數據屬性指定(包括數據范圍和數據步進等信息)功能、非法信息判斷功能和異常處理功能,因此將設計分為:初始化設計;實時判斷設計和異常處理設計3個部分。

初始化設計需要考慮的要求主要是數據屬性指定靈活、擴展方便,為非法信息判斷功能提高基本信息。

實時判斷設計的要點在于實現技術可靠,功能模塊劃分清晰,邏輯處理清晰,軟件編碼易于實現。

異常處理設計的要求是能夠滿足S頻段統一測控系統的基本特點,尋求合適的統一處理機制,盡量滿足已有工程設計需求的同時,具備一定的可擴展性。

1.3 編輯控件類型設計

目前國內S頻段統一測控系統監控軟件所使用的編輯控件類型包括:整數型、浮點型和16進制型3種。因此需要將編輯控件按照以上類型劃分,分別進行設計開發。

整數型編輯控件的主要特點是需要指定數據可輸入最小值、可輸入最大值以及可輸入步進。例如年份信息,要求最小輸入2000年;最大輸入2030年;步進為4,表示從2000年開始,每間隔4年為一合法信息。

浮點型編輯控件的主要特點與整數型基本一致,需要增加可輸入精度屬性。例如在S頻段統一測控系統中常見的頻率參數,其輸入范圍為2 025~2 200 MHz,步進要求為 100 Hz、1 kHz兩檔,輸入精度也要求100 Hz、1 kHz兩檔。

16進制型編輯控件目前的主要特點是需要指定數據輸入最大值。例如單字節編輯控件,按照16進制數據輸入,其最大值不超過0x1F。

2 需要解決的問題

2.1 編輯控件的初始化

普通編輯控件由于無法指定輸入信息范圍、步進和精度等屬性,是導致其無法提供非法信息自動判斷的根本原因;在VC6.0編譯環境下尋求一種合適的初始化處理機制,能夠完成上述屬性的指定,是解決問題的前提條件。

因此該機制必須具備實現技術可靠、較強擴展性的特點,從而實現3種類型編輯控件的統一設計;并且能夠根據不同的工程研制實際需求,達到易于擴展、維護簡單和編碼工作量小的總體要求。

2.2 編輯控件的實時判斷

普通編輯控件由于不提供輸入信息的實時判斷機制,是其不具備非法信息自動判斷的重要原因。在VC6.0編譯環境下尋求一種合適的實時判斷機制,實現信息的動態獲取、實時判斷,是解決問題的基本條件。

因此該機制在解決實時判斷問題的同時,能夠提供一種相對通用的程序判決邏輯清晰,達到信息實時判斷的總體要求。

2.3 編輯控件的異常處理

普通編輯控件由于不提供異常信息的處理機制,也是考慮改進的重要原因;結合S頻段統一測控系統監控軟件自身特點,在VC6.0編譯環境下尋求一種易于實現的異常信息處理方式,確保異常信息的統一處理,是衡量改進編輯控件好壞的重要指標。

該方式在解決非法信息異常處理的同時,還應該綜合考慮目前S頻段統一測控系統的特點,滿足異常處理方式統一的總體要求。

3 關鍵技術

3.1 構造函數重載技術

為解決編輯控件初始化問題,基于C++語言的構造函數重載技術是一種可選方案。使用構造函數的重載技術,不僅能夠可靠解決編輯控件輸入范圍、輸入步進的初始化處理問題,而且針對3種不同類型編輯控件,具有較強的擴展性。

以下為整數型編輯控件構造函數及其主要代碼。針對不同控件類型,例如浮點型,如果需要擴展增加輸入精度屬性,可通過增加構造函數輸入變量順利實現。

∥構造函數重載

∥Min最小值Max最大值Step步進

CLyqEditEx(int Min,int Max,int Step);

CLyqEditEx m_strYear;∥申明年信息編輯控件

m_strYear(2000,2030,4);

浮點型以及16進制型編輯控件僅提供構造函數,由于其他技術與功能實現與整數型基本一致,不再重復描述。

∥浮點型編輯控件構造函數重置

∥Min可輸入最小值Max可輸入最大值Step輸入值步進Precision輸入值精度

CLyqEditEx_Double(double Min,double Max,double Step,double Precision);

∥16進制型編輯控件構造函數重置

∥Max可輸入最大值

CDzEditEx(DWORD Max).

3.2 消息響應技術

為解決編輯控件的實時判斷問題,采用VC6.0編譯環境的消息響應技術是一種可行方案。使用輸入過程中產生的消息響應機制,可以動態實時地進行信息的獲取和判斷處理。

該方案的特點是通過輸入信息產生的消息驅動實時判斷,因此能夠充分滿足編輯控件實時判斷要求。

以下為消息響應技術的主要生成代碼。

∥消息的生成ON_CONTROL_REFLECT(EN_UPDATE,OnUpdate)

∥消息的處理

void CLyqEditEx::OnUpdate()

{

if(!JudgeParaNum(TRUE))∥輸入信息判斷

{

ResetPara(FALSE);∥異常處理

}

}

3.3 程序判決邏輯

通過消息響應技術只能解決輸入信息的實時響應問題,并不能解決輸入信息的判斷問題。

在輸入消息到達后,需要針對輸入信息提供統一的判斷處理,完成輸入信息非法判斷;同時為保證統一設計以及維護方便,需要針對3種不同類型編輯控件提供統一的判決邏輯。

如上所述,函數JudgeParaNum完成輸入信息的非法判斷處理,必須包括以下幾個部分的處理邏輯:最新輸入信息的獲取處理;非法字符的基本判斷處理;長度超限的判斷處理;長度是否到達最小值的判斷;輸入信息范圍的判斷處理;輸入步進的判斷處理和合法信息的記憶處理。需要說明的是,對于浮點型編輯控件還需要增加輸入精度的判斷處理。

最新輸入信息的獲取處理主要完成輸入信息的實時獲取操作。非法字符的基本判斷處理主要完成非法字符輸入的判斷,例如輸入信息包括了非阿拉伯數字的信息,應立即識別為非法輸入。長度超限的判斷處理主要完成數據輸入長度的判斷,結合數據輸入范圍、數據步進和精度等信息,應自動識別出可輸入信息的最小長度以及最大長度,在輸入信息超過最大輸入長度后,應立即識別為非法輸入。長度是否到達最小值的判斷處理主要根據最新輸入信息是否達到最小輸入長度,區別是否需要啟動判決邏輯,防止因未輸入完畢導致誤判輸入信息非法。

輸入信息范圍的判斷處理主要根據構造函數提供的輸入最小值以及最大值,判斷輸入信息是否超限。輸入步進的判斷處理主要根據構造函數提供的輸入步進,判斷輸入信息的步進信息是否超限。對于浮點型編輯控件,輸入精度的判斷處理主要根據構造函數提供的輸入精度,判斷輸入信息精度是否超限。據此形成的判決邏輯流程圖,將直接影響到編輯控件實時判斷功能的順利實現。以整數型編輯控件為例,判決邏輯流程圖如圖1所示。

圖1 判決邏輯流程

圖1中的判斷過程必須是順序處理的,其中第3步驟判斷長度是否達到最小值的過程處理邏輯是:如果信息長度未達到最小值,則直接結束判斷;如果信息長度已經達到最小值要求,則繼續后續判斷處理操作。

從圖1中的流程內容看,每一個執行步驟所完成的功能相對獨立,因此在實現過程中,每一個執行步驟都可以封裝成獨立的函數,便于代碼的調試以及維護。

從圖1中的流程執行關系看,各個流程步驟之間的調用邏輯基本是線性的,互相之間的關系主要通過調度次序來體現,因此,整個判決邏輯比較清晰,簡單,在VC6.0編譯環境下編碼人員容易實現。

對于浮點型編輯控件,需要在圖1中的判斷步驟最后增加精度判斷邏輯;對于16進制類型編輯控件,需要在圖1中的判斷步驟中刪除步進判斷。

4 系統仿真

4.1 仿真環境

驗證編輯控件的軟件環境可以采用Wondows系列操作系統,開發平臺選用VC6.0編譯環境,使用到的工具軟件包括Office 2003以及代碼統計工具。

硬件設備采用目前市場上主流臺式機配置即可,基本硬件配置主要要求如下:

Dell臺式機的CPU為2.79 MHz,內存1 GB以上,主板為INTEL 945芯片組。

此外,為了保證編輯控件能夠正常使用,完成了仿真測試軟件的開發工作。在該仿真測試軟件中,可以分別使用改進的編輯控件和普通編輯控件,配合完成相關性能測試工作。

4.2 仿真方法

為了得到最詳細的原始素材,采用程序檢查法完成系統性能指標的測試和驗證。即在仿真測試軟件的關鍵點設置程序測試節點,記錄測試數據信息,盡可能地獲取接近實際情況的測試數據。

編輯控件系統性能中的處理時間為關鍵指標。因此,需要在仿真測試軟件中采集調用開始以及結束時間,獲取調用處理所花費的時間,然后采取多組測試,使用求數學平均值方法完成原始數據的記錄和整理工作。

編輯控件的外部調用次數也是重要指標,因此,需要針對仿真測試軟件的外部調用次數進行統計。該工作比較簡單,采用常規的代碼統計分析工具,針對特定代碼進行處理即可實現。

考慮到S頻段統一測控系統監控軟件的自身特點,在一個相對獨立的調用編輯控件界面中,其處理數量一般都在10個以上,因此在仿真測試軟件設計中,編輯控件的使用數量不能過低,系統仿真過程中分別采用了10個、20個、50個一共3檔進行測試。

5 仿真結果分析

在Dell臺式機進行的系統仿真測試,主要集中在20次、50次兩檔上。其中20次一檔一共仿真10組,50次一檔一共仿真5組。以20次一檔為例,其仿真結果如表1所示。

表1 普通控件與改進控件性能比對

從表1中可以看出,在程序人工編碼方面,普通控件由于需要完成額外的非法判斷處理,與改進控件有很大差距,同時還未實現異常處理功能;在系統執行效率性能以及外部調用次數方面,普通控件與改進控件略有差別,改進控件在執行時間上有增加現象,但隨著計算機性能的不斷提高,該執行效率的輕微下降是可以接受的。

根據以上分析,由于普通控件與改進控件在執行效率和外部調用性能方面沒有本質上的差別,但是在編碼行數方面,改進后的控件比普通控件有明顯改善,如果再考慮到改進控件所新具備的自動判斷和異常處理功能,建議在VC6.0編譯環境下的編輯控件采用該設計。

6 結束語

在VC6.0編譯環境下進行的編輯控件改進設計,特別適合在S頻段統一測控系統監控軟件中使用,根據該系統的特點增加了輸入信息合法性的實時判斷、異常處理功能。與普通控件相比,不僅在執行效率等方面沒有明顯的降低,而且該控件也具備便捷的代碼調試能力和高度的可靠性,已在多個S頻段統一測控系統軟件中使用,運行非常可靠。

[1]孫 皓.Visual C++范例大全[M].北京:機械工業出版社,2009.

[2]錢 能.C++程序設計教程[M].北京:清華大學出版社,2001.

[3]LIPPMAN S B.Essential C++[M](中文版).侯 捷,譯.武漢:華中科技大學出版社,2009.

[4]DEITEL H M,DEITEL P J.C++大學教程[M].北京:電子工業出版社,2009.

[5]LIPPMAN S B,LAJOIE J.C++Primer[M](中文版).北京:中國電力出版社,2001.

[6]KRUGLINSKI D J.Visual C++技術內幕[M].北京:清華大學出版社,1997.

[7]楊正甫.面向對象分析與設計[M].北京:中國鐵道出版社,1997.

猜你喜歡
功能信息設計
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
關于非首都功能疏解的幾點思考
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
設計之味
舒適廣告(2008年9期)2008-09-22 10:02:48
主站蜘蛛池模板: 三区在线视频| 亚洲AV无码不卡无码| 亚洲一区第一页| 日本精品一在线观看视频| 日韩精品无码一级毛片免费| 久青草网站| 无码一区二区三区视频在线播放| 天天综合色天天综合网| 三级欧美在线| 九九久久精品免费观看| 日韩最新中文字幕| 99热国产在线精品99| 国产在线欧美| 国产午夜一级毛片| 99偷拍视频精品一区二区| 国产00高中生在线播放| 国产亚洲精久久久久久无码AV | 美女无遮挡被啪啪到高潮免费| 日韩高清一区 | 成人国产免费| 日韩成人免费网站| 成人综合在线观看| 欧美综合在线观看| 91在线视频福利| 亚洲欧洲天堂色AV| 四虎综合网| 亚洲成人一区二区| 婷五月综合| 日本免费福利视频| 亚洲AV人人澡人人双人| 高清无码一本到东京热| 日韩精品亚洲一区中文字幕| 性色生活片在线观看| 精品无码人妻一区二区| 一级毛片免费不卡在线 | 99在线视频网站| 国产在线97| 国产爽妇精品| 国产jizz| 亚洲视频免费在线看| 亚洲AV电影不卡在线观看| 91免费在线看| 日韩av高清无码一区二区三区| 国产玖玖玖精品视频| 色婷婷在线影院| 亚洲成人福利网站| 日本午夜精品一本在线观看| 99视频精品全国免费品| 亚洲黄色激情网站| 成年免费在线观看| 欧美精品亚洲精品日韩专区va| 无码乱人伦一区二区亚洲一| 无码高潮喷水在线观看| 在线精品亚洲国产| 久久久久夜色精品波多野结衣| 久久91精品牛牛| 国产性爱网站| 免费不卡视频| 国产国语一级毛片在线视频| 国产h视频在线观看视频| 东京热高清无码精品| 日韩国产精品无码一区二区三区| 婷婷成人综合| 久久公开视频| 国产91丝袜在线播放动漫 | 久久a毛片| 国产欧美日韩免费| 亚洲不卡影院| 成人免费网站在线观看| 青草视频网站在线观看| a毛片在线播放| 男人的天堂久久精品激情| 亚洲成人在线免费观看| 五月婷婷中文字幕| 亚洲欧洲一区二区三区| 亚洲欧洲免费视频| 激情五月婷婷综合网| 五月天在线网站| 手机精品视频在线观看免费| 亚洲欧美国产视频| 日韩精品视频久久| 成人国产免费|