亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于C#環(huán)境下的“類嵌入式操作系統(tǒng)”設(shè)計(jì)與實(shí)現(xiàn)

        2018-05-26 09:48:08周淑華
        卷宗 2018年10期
        關(guān)鍵詞:操作系統(tǒng)控件

        周淑華

        摘 要:文章針對(duì)模擬訓(xùn)練軟件開發(fā)中需要用到的嵌入式操作系統(tǒng)的控件進(jìn)行了研究,并在C#環(huán)境下對(duì)常用操作系統(tǒng)控件的設(shè)計(jì)進(jìn)行了研究,提出設(shè)計(jì)的思路并進(jìn)行了實(shí)現(xiàn)。研究結(jié)果表明,此種設(shè)計(jì)方法能夠解決在windows環(huán)境下模擬嵌入式操作系統(tǒng)操作界面的問題,對(duì)于研發(fā)裝備操作類的模擬訓(xùn)練軟件具有一定的參考意義。

        關(guān)鍵詞:控件;操作系統(tǒng);

        為了便于用戶對(duì)裝備的參數(shù)進(jìn)行配置,在很多裝備研制的過程中都會(huì)采用嵌入式操作系統(tǒng),比如VxWorks WinCE等。嵌入式操作系統(tǒng)因其運(yùn)行速度快,占用內(nèi)存小等優(yōu)勢(shì),得到了廣泛的應(yīng)用。而在很多模擬訓(xùn)練軟件開發(fā)的過程中,需要在Windows環(huán)境下,對(duì)裝備的參數(shù)配置界面進(jìn)行模擬,也即模擬出類似嵌入式操作系統(tǒng)的操作界面,便于用戶對(duì)裝備操作進(jìn)行模擬訓(xùn)練。因此,怎樣在Windows環(huán)境下設(shè)計(jì)出一個(gè)類似嵌入式操作系統(tǒng)的“類嵌入式操作系統(tǒng)”,能夠完成嵌入式操作系統(tǒng)的一些功能,滿足模擬訓(xùn)練軟件開發(fā)的特定需求,也就變得有一定意義。本文正是基于此,提出了一種基于C#環(huán)境下的“類嵌入式操作系統(tǒng)”設(shè)計(jì)方法,并在工程實(shí)踐中得到了應(yīng)用,應(yīng)用結(jié)果表明,該方法正確可行,具有一定推廣應(yīng)用價(jià)值。

        1.“類嵌入式操作系統(tǒng)”設(shè)計(jì)需要解決的關(guān)鍵問題

        “類嵌入式操作系統(tǒng)”設(shè)計(jì)需要解決的關(guān)鍵問題主要包括三個(gè)方面:一是操作系統(tǒng)底層算法設(shè)計(jì);二是操作系統(tǒng)界面控件設(shè)計(jì);三是操作系統(tǒng)界面控件所承載的參數(shù)之間約束關(guān)系的設(shè)計(jì)。對(duì)于第一個(gè)問題來說,Windows操作系統(tǒng)本身的擁有非常強(qiáng)大的功能,因此,底層算法完全可以由Windows來解決,用戶無需再加考慮;對(duì)于第三個(gè)問題,需要根據(jù)具體裝備參數(shù)之間的約束關(guān)系來定,需要具體問題具體對(duì)待,無法統(tǒng)一設(shè)計(jì);對(duì)于第二個(gè)問題,Windows本身也提供了一些標(biāo)準(zhǔn)的控件,比如文本框控件、下拉列表控件等,但是,這些控件和嵌入式操作系統(tǒng)的控件無論在外觀方面還是在控制方式方面都有差別。比如,在控件的控制方式方面,Windows一般采用鼠標(biāo)操作控件,而嵌入式操作系統(tǒng)很少用鼠標(biāo)操作,多用鍵盤對(duì)控件進(jìn)行操作。因此,需要對(duì)操作系統(tǒng)的界面控件進(jìn)行重新設(shè)計(jì),使之符合嵌入式操作系統(tǒng)的操作需求,所以,操作系統(tǒng)界面控件設(shè)計(jì)問題是“類嵌入式操作系統(tǒng)”設(shè)計(jì)的重點(diǎn),也是難點(diǎn),本文主要針對(duì)此問題進(jìn)行研究,對(duì)嵌入式操作系統(tǒng)中的文本輸入控件、組合框控件、列表顯示控件、對(duì)話框控件和單選按鈕控件等五種主要控件進(jìn)行設(shè)計(jì)。

        2.“類嵌入式操作系統(tǒng)”控件設(shè)計(jì)與使用

        (1)文本輸入控件

        文本輸入框控件(INPUTBOX)是嵌入式操作系統(tǒng)最常用的控件之一,它是實(shí)現(xiàn)用戶文本輸入和參數(shù)顯示的接口,它以Windows標(biāo)準(zhǔn)控件Label控件為基類進(jìn)行設(shè)計(jì)。類屬性除了包含Label控件的所有屬性之外,還包括控件被輸入次數(shù)屬性(iCount)和控件是否為焦點(diǎn)控件屬性(bFocus),類成員函數(shù)除了包含Label控件的的所有成員函數(shù)之外,還包括使控件成為焦點(diǎn)控件函數(shù)(SetFocus())、使控件退出焦點(diǎn)函數(shù)(OutFocus())、控件參數(shù)輸入函數(shù)(input(string key)),可以實(shí)現(xiàn)字符的輸入、刪除以及焦點(diǎn)的切換操作。INPUTBOX控件主要代碼設(shè)計(jì)如下:

        public class INPUTBOX : Label//參數(shù)輸入控件定義

        {

        public INPUTBOX(Form fm) //參數(shù)初始化

        private int iCount;//標(biāo)識(shí)控件被輸入次數(shù)

        private bool bFocus;//標(biāo)識(shí)控件是否是焦點(diǎn)

        public void SetFocus()//設(shè)置控件為焦點(diǎn)

        public void OutFocus()//使控件退出焦點(diǎn)

        public void input(string key)//控件參數(shù)輸入函數(shù)

        }

        (2)組合框控件

        組合框控件(CMBOX)是用于對(duì)參數(shù)進(jìn)行選擇的控件,它可以在“上鍵”和“下鍵”的控制下,顯示預(yù)先設(shè)置的參數(shù),供用戶進(jìn)行選擇。它以Windows標(biāo)準(zhǔn)控件Label控件為基類進(jìn)行設(shè)計(jì)。類屬性除了包含Label控件的所有屬性之外,還包括控件參數(shù)選項(xiàng)總個(gè)數(shù)(nCount)、當(dāng)前參數(shù)值索引(index)、參數(shù)存儲(chǔ)寄存器(par)、參數(shù)值序列(parstr)、控件成為焦點(diǎn)標(biāo)志(bFocus)和控件是否可用標(biāo)志(bDisabled),類成員函數(shù)除了包含Label控件的的所有成員函數(shù)之外,還包括獲取參數(shù)選項(xiàng)總個(gè)數(shù)函數(shù)(getnum(string str))、填充參數(shù)存儲(chǔ)寄存器函數(shù)(FillPar(string str))、使控件成為焦點(diǎn)函數(shù)(SetFocus())、使控件退出焦點(diǎn)函數(shù)(OutFocus())、使控件不可用函數(shù)(Disable())、按鍵輸入函數(shù)(input(string str))、顯示指定參數(shù)值函數(shù)(Show(string str))和顯示指定位置參數(shù)函數(shù)(Show(int j))。CMBOX控件主要代碼設(shè)計(jì)如下:

        public class CMBOX : Label//組合框控件

        {

        public CMBOX(Form fm) //參數(shù)初始化

        public int nCount;//參數(shù)值選項(xiàng)總個(gè)數(shù)

        public int index;//當(dāng)前參數(shù)值索引

        public string[] par;//參數(shù)存儲(chǔ)寄存器

        private string parstr;//參數(shù)值序列

        private bool bFocus;// 控件成為焦點(diǎn)標(biāo)志

        private bool bDisabled;//控件是否可用標(biāo)志

        private int getnum(string str)// 獲取參數(shù)選項(xiàng)總個(gè)數(shù)函數(shù),根據(jù)指定字符串獲取參數(shù)個(gè)數(shù)

        private void FillPar(string str)//填充參數(shù)存儲(chǔ)寄存器函數(shù),將字符串所代表的參數(shù)填寫到數(shù)組par[]中

        public string strPar//參數(shù)字符串屬性,不可讀,只可寫

        public void SetFocus()//使控件成為焦點(diǎn)函數(shù)

        public void OutFocus()//使控件退出焦點(diǎn)

        public void Disable()//使控件不可用函數(shù),控件變灰,不可用

        public void input(string str)//按鍵輸入函數(shù),對(duì)“上鍵”、“下鍵”、“左鍵”和“右鍵”進(jìn)行響應(yīng)

        public void Show(string str)//顯示指定參數(shù)值,顯示指定的參數(shù)值str

        public void Show(int j)//顯示指定位置參數(shù)值,顯示指定位置為j的參數(shù)值

        }

        (3)列表顯示控件

        列表顯示框控件(LISTVIEWBOX)是采用列表的方式對(duì)參數(shù)進(jìn)行分行顯示的控件,類屬性主要包括列表顯示子控件(lb)、焦點(diǎn)行控件索引(index)、焦點(diǎn)標(biāo)志(bFocus)、控件列數(shù)(COLLUM)和控件行數(shù)(ROW),類成員函數(shù)主要包括顯示控件函數(shù)(Location())、隱藏控件函數(shù)(hide())、使控件某行成為焦點(diǎn)函數(shù)(SetFocus(int i))、使控件某行退出焦點(diǎn)函數(shù)(OutFocus(int i))、使列表顯示控件成為焦點(diǎn)函數(shù)(SetFocus())、使列表顯示控件退出焦點(diǎn)函數(shù)(OutFocus())、按鍵響應(yīng)函數(shù)(input(string str))、獲取控件參數(shù)值函數(shù)(GetValue())、修改控件參數(shù)值函數(shù)(SetValue(string[] str))、增加控件列表項(xiàng)函數(shù)(Increase(string[] str))、減少控件列表項(xiàng)函數(shù)(Decrease())和前置顯示函數(shù)(BringToFront())。能夠?qū)崿F(xiàn)以列表的方式進(jìn)行顯示參數(shù)、增加參數(shù)、刪除參數(shù)、修改參數(shù)等功能。LISTVIEWBOX控件主要代碼設(shè)計(jì)如下:

        public class LISTVIEWBOX//列表顯示控件定義

        {

        public LISTVIEWBOX(Form fm, string[,] par) //初始化參數(shù)

        public Label[] lb;// 列表顯示子控件

        public int index;//焦點(diǎn)的控件索引

        public bool bFocus;//標(biāo)識(shí)該控件是否為焦點(diǎn)控件

        public int COLLUM;//控件列數(shù)

        public int ROW;//控件行數(shù)

        public void Location(Point pt, int[] width, int height = 14, int distance = 2)//顯示控件函數(shù),pt表示控件左上角的位置,row表示控件有幾行,collum表示控件有幾列,width[]表示每個(gè)控件的寬度,height表示控件之間的上下距離,distance表示控件左右的距離

        public void hide()//隱藏控件函數(shù)

        public void SetFocus(int i)//使控件第i行成為焦點(diǎn)函數(shù)

        public void OutFocus(int i)//使控件第i行退出焦點(diǎn)函數(shù)

        public void SetFocus()//使列表顯示控件成為焦點(diǎn)函數(shù)

        public void OutFocus()//使列表顯示控件退出焦點(diǎn)函數(shù)

        public void input(string str)//按鍵輸入函數(shù),對(duì)“上鍵”和“下鍵”進(jìn)行響應(yīng)

        public string[] GetValue()//獲取控件參數(shù)值函數(shù)函數(shù),獲取當(dāng)前成為焦點(diǎn)的控件參數(shù)值

        public void SetValue(string[] str)//修改控件參數(shù)值函數(shù),修改當(dāng)前成為焦點(diǎn)的控件參數(shù)值

        public void Increase(string[] str)//增加列表項(xiàng)函數(shù),將str增加到當(dāng)前控件參數(shù)表中

        public void Decrease()//減少列表項(xiàng)函數(shù),刪除最后一項(xiàng)列表項(xiàng)

        public void BringToFront()//前置顯示函數(shù),將控件在界面最頂層顯示

        (4)對(duì)話框控件

        對(duì)話框控件(MessageTIP)用于彈出提示信息,類屬性主要包括:彈出對(duì)話框的背景(pbox)、對(duì)話框的類型(tpType)、對(duì)話框的標(biāo)題(title)、提示消息的內(nèi)容(tip)、確認(rèn)鍵(OK)、取消鍵(CANCEL)、選項(xiàng)標(biāo)志(bOption)和顯示標(biāo)志(bShow)。類成員函數(shù)主要包括:初始化函數(shù)(MessageTIP(Form fm, int type))、彈出對(duì)話框函數(shù)(ShowIip(string strTitle, string strTip))、隱藏對(duì)話框函數(shù)(hideBox())、置頂顯示函數(shù)(TopShow())和按鍵響應(yīng)函數(shù)(input(string key)),能夠?qū)崿F(xiàn)對(duì)話框的彈出、消息顯示、按鈕選擇等功能。MessageTIP類主要代碼設(shè)計(jì)如下:

        public class MessageTIP

        {

        private PictureBox pbox;//彈出對(duì)話框背景

        private int tpType;//對(duì)話框的類型0,標(biāo)識(shí)YN,1標(biāo)識(shí)YY

        private Label title;//對(duì)話框標(biāo)題

        private Label tip;//提示消息的內(nèi)容

        private Label OK;//確認(rèn)按鍵

        private Label CANCEL;//取消按鍵

        private bool bOption;//選項(xiàng)標(biāo)志,0標(biāo)識(shí)選擇確認(rèn),1標(biāo)識(shí)選擇取消

        private bool bShow;//標(biāo)識(shí)控件是否顯示

        public MessageTIP(Form fm, int type)//初始化參數(shù)函數(shù),根據(jù)對(duì)話框類型type確定顯示背景及顯示內(nèi)容

        public void ShowIip(string strTitle, string strTip) //彈出對(duì)話框函數(shù),顯示對(duì)話框背景、標(biāo)題strTitle及內(nèi)容strTip

        public void hideBox()//隱藏對(duì)話框

        public void TopShow()//置頂顯示對(duì)話框,將對(duì)話框在界面最前端顯示

        public int input(string key)//按鍵響應(yīng)函數(shù),對(duì)“左鍵”、“右鍵”、“確認(rèn)鍵”進(jìn)行響應(yīng)

        }

        (5)單選按鈕控件

        單選按鈕控件(RadioBtnBox)在界面上顯示多個(gè)圓點(diǎn)代表的按鈕,只能選擇一個(gè),選項(xiàng)之間互斥,類屬性主要包括:控件圖標(biāo)(pbox)、控件顯示標(biāo)志(Visible)和控件位置(Loaction)。類成員函數(shù)主要包括:初始化函數(shù)(RadioBtnBox (Form fm, Point pt))、置頂顯示函數(shù)(BringToFront())、使控件成為焦點(diǎn)函數(shù)(SetFocus())和使控件退出焦點(diǎn)函數(shù)(OutFocus())。

        public class RadioBtnBox

        {

        public RadioBtnBox (Form fm, Point pt)//初始化參數(shù)

        private PictureBox pbox;//控件圖標(biāo)

        public bool Visible//控件顯示標(biāo)志

        public Point Loaction//控件位置

        public void BringToFront()//置頂顯示函數(shù)

        public void SetFocus()//使控件成為焦點(diǎn)函數(shù)

        public void OutFocus()//使控件退出焦點(diǎn)函數(shù)

        }

        猜你喜歡
        操作系統(tǒng)控件
        關(guān)于.net控件數(shù)組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        智能手機(jī)操作系統(tǒng)的分析與比較
        卷宗(2016年10期)2017-01-21 14:04:15
        國(guó)產(chǎn)桌面操作系統(tǒng)中虛擬化技術(shù)應(yīng)用研究
        計(jì)算機(jī)維護(hù)中操作系統(tǒng)還原技術(shù)的分析
        對(duì)計(jì)算機(jī)進(jìn)行操作系統(tǒng)重裝的維護(hù)
        基于單片機(jī)的嵌入式系統(tǒng)的開發(fā)研究
        “操作系統(tǒng)原理”實(shí)驗(yàn)教學(xué)設(shè)置初探
        ASP.NET服務(wù)器端驗(yàn)證控件的使用
        電子世界(2014年12期)2014-10-21 11:09:39
        就這樣玩會(huì)VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        Spreadsheet控件在Delphi數(shù)據(jù)庫(kù)系統(tǒng)中的編程與應(yīng)用
        青青草免费视频一区二区| 在线视频99| 91精品国产91久久久无码色戒| 久久精品国产亚洲av热东京热| 免费观看国产短视频的方法| 日本高清h色视频在线观看| 成人乱码一区二区三区av| 久久久久亚洲精品无码网址| 乱色视频中文字幕在线看| 亚洲三级香港三级久久| 人妻少妇久久中文字幕| 亚洲av中文无码字幕色三| 欧美日韩国产乱了伦| 久久精品熟女亚洲av香蕉| 3d动漫精品啪啪一区二区免费| 亚洲av有码在线天堂| 久久精品韩国日本国产| 午夜av天堂精品一区| 国产欧美日韩综合精品一区二区| 国产成人国产在线观看入口| 亚洲伊人成综合人影院| 亚洲人不卡另类日韩精品| 精品九九人人做人人爱| 亚洲精品国产精品国自产观看| 在线a人片免费观看高清| 国产av一卡二卡日韩av| 中文字幕久久久人妻无码| 精品国产精品久久一区免费式| 日韩欧美亚洲国产一区二区三区| 久亚洲精品不子伦一区| 亚洲国产成人久久综合| 日本成人一区二区三区| 三级日本午夜在线观看| 亚洲综合欧美色五月俺也去| 精品无码人妻一区二区三区| 亚洲AV无码乱码精品国产草莓| 阴唇两边有点白是怎么回事| 亚洲国产成人精品无码区二本| 中文字幕经典一区| 国产亚洲精品视频网站| 国内精品久久久久影院薰衣草 |