亚洲免费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)用
        成人动漫久久| 国产一区二区三区啊啊| 森中文字幕一区二区三区免费| 国产精品人人做人人爽| 人妻av乱片av出轨| 免费看国产成年无码av| 久久av一区二区三区下| 日本中文字幕有码在线播放| 国产福利一区二区三区在线视频| 性色av免费网站| 欧美亚洲日韩国产人成在线播放| 在线观看亚洲你懂得| 国产网红一区二区三区| 一本一道久久综合久久| 亚洲av成人片色在线观看高潮| 又污又爽又黄的网站| 最新国产女主播福利在线观看| 精品国产亚洲人成在线观看| 久久久精品国产免费看| 99麻豆久久久国产精品免费| 国产伦精品一区二区三区免费| av深夜福利在线| 最新亚洲视频一区二区| 日韩不卡的av二三四区| 人妻夜夜爽天天爽三区麻豆av网站| 欧美熟妇精品一区二区三区| 中文一区二区三区无码视频| 丝袜美腿亚洲综合在线播放| 欧美性受xxxx黑人猛交| 人人妻人人妻人人片av| 久久这里都是精品一区| 成年女人18毛片观看| 国产午夜视频在线观看免费| 国产又a又黄又潮娇喘视频| 美女裸体无遮挡免费视频的网站| 国产一区二区三区色区| 亚洲一区二区三区国产| 少妇愉情理伦片高潮日本| 久久国产精品无码一区二区三区| 日本一级淫片免费啪啪| 国产精品白浆一区二区免费看|