一、 全屏幕圖形界面設(shè)計(jì)
創(chuàng)新互聯(lián)建站主營(yíng)高邑網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,APP應(yīng)用開發(fā),高邑h5微信小程序定制開發(fā)搭建,高邑網(wǎng)站營(yíng)銷推廣歡迎高邑等地區(qū)企業(yè)咨詢
圖形界面是現(xiàn)代軟件中人機(jī)交互的主要手段。為了追求界面的統(tǒng)一和美觀,在軟件開放過程中,圖形界面大多采用全屏幕構(gòu)圖方式。這是通過將窗體的邊框設(shè)置為無邊框(BorderStyle=None),將窗體顯示模式設(shè)置為極大化(WindowState=Maximized)來實(shí)現(xiàn)的。
當(dāng)一個(gè)窗體界面的設(shè)計(jì)中要容納多張圖片和多個(gè)控制時(shí),將出現(xiàn)窗體顯示速度明顯變慢的現(xiàn)象,嚴(yán)重影響了程序運(yùn)行的流暢性。為了解決這一問題,在開放過程中,采用了一種將【界面設(shè)計(jì)窗體】與【功能實(shí)現(xiàn)窗體】分開處理的方法。在【界面設(shè)計(jì)窗體】中,首先按功能的需要和界面設(shè)計(jì)的創(chuàng)意,將所需的大量圖片和控制在屏幕上安排好,選擇美觀的字體、顏色、線型,對(duì)屏幕界面進(jìn)行設(shè)計(jì)、修飾加工;然后在其全屏幕運(yùn)行的狀態(tài)下,利用剪貼技術(shù),將這一設(shè)計(jì)完成的圖形界面全屏幕復(fù)制到剪貼板上;
接著將這一屏幕映象作為一張圖片粘貼在【功能實(shí)現(xiàn)窗體】的背景上。這樣,從外觀上看,兩個(gè)窗體的形狀完全相同,而在屏幕的顯示速度上,后者明顯加快。這時(shí),【功能實(shí)現(xiàn)窗體】中的控件已變成一個(gè)象征性的圖標(biāo),對(duì)它的操作,可在控制圖標(biāo)的對(duì)應(yīng)位置上設(shè)置一個(gè)Image 類型的圖象框,通過對(duì)圖象框的操作,來代替原先對(duì)控制對(duì)象的操作。
采用這種方法,使窗體界面設(shè)計(jì)的靈活性大大增加,可以任意發(fā)揮,而不用擔(dān)心控件、圖片太多,影響窗體的顯示速度。但采用這種方法,將不可避免地增加應(yīng)用程序本身所占的存儲(chǔ)容量,這是以容量換取速度必須付出的代價(jià)。
二、 動(dòng)態(tài)功能提示信息的實(shí)現(xiàn)
在現(xiàn)代軟件設(shè)計(jì)中,多數(shù)功能圖標(biāo)、按鈕都在界面上直接確定其對(duì)應(yīng)的名稱,同時(shí)也提供了動(dòng)態(tài)提示的功能,即當(dāng)鼠標(biāo)移至某一控件時(shí),或使鼠標(biāo)的形狀用一具有象征意義的圖標(biāo)代替,或自動(dòng)出現(xiàn)一條文字提示,下面介紹一下如何實(shí)現(xiàn)這種先進(jìn)的提示模式。
動(dòng)態(tài)改變鼠標(biāo)的圖形形狀,是通過控件的MousePointer屬性設(shè)置為13(自定義),然后在MouseIeon屬性中選取一ICO圖標(biāo)文件來完成的;動(dòng)態(tài)文字提示功能是利用控件的MouseMove事件來實(shí)現(xiàn)的:將功能提示處理程序設(shè)計(jì)在對(duì)應(yīng)的MouseMove事件過程中,當(dāng)鼠標(biāo)移動(dòng)到該控件范圍區(qū)域時(shí),即可觸發(fā)程序執(zhí)行,完成動(dòng)態(tài)功能提示;為了防止處理程序反復(fù)觸發(fā),必須設(shè)置一控制開關(guān),使處理程序只在鼠標(biāo)第一次觸發(fā)該控件區(qū)域時(shí)被執(zhí)行;取消功能提示的處理程序設(shè)計(jì)在窗體的MouseMove事件中,
說明程序如下:
Dim FirstTouch As Boolean '防止反復(fù)觸發(fā)處理程序的控制變量
Private Sub ControlObject- MouseMove ()
If FirstTouch Then
FirstTouch =False '顯示功能提示字符
End Sub
Private Sub Form- MouseMove ()
FirstTouch =True '取消功能提示字符
End Sub
Me.WindowState = FormWindowState.Maximized 顯示最大化
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None 無邊框
就可以實(shí)現(xiàn)全屏了
Me.Height = My.Computer.Screen.Bounds.Height
Me.Width = My.Computer.Screen.Bounds.Width
這是設(shè)置窗體的長(zhǎng)寬和屏幕的分辨率一樣大小,相當(dāng)于全屏。
如果Me.WindowState=FormWindowState.Maximized的話,只是單純的將窗體最大化,但恢復(fù)窗口大小后窗體的大小實(shí)際上還和原來一樣大。
VB.NET的特點(diǎn)
1.真正成為面向?qū)ο笠约爸С掷^承性的語(yǔ)言。
2.窗體設(shè)計(jì)器支持可視化繼承,并且包含了許多新的特性,比如自動(dòng)改變窗體大小、資源本地化支持、數(shù)據(jù)類工具內(nèi)在支持XML數(shù)據(jù)。
3.直接建立在.NET的框架結(jié)構(gòu)上,因此開發(fā)人員可以充分利用所有.NET平臺(tái)特性,也可以與其他的.NET語(yǔ)言交互。
4.為Windows應(yīng)用程序提供了XCOPY部署,開發(fā)者不再需要為DLL的版本問題擔(dān)憂。
回復(fù) 1# [ol][*]Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load[*]? ???Me.Height = My.Computer.Screen.WorkingArea.Height[*]? ???Me.Width = My.Computer.Screen.WorkingArea.Width[*]? ???Me.WindowState = FormWindowState.Maximized[*]? ???Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None[*]End Sub[/ol]
Me.Height = My.Computer.Screen.Bounds.Height
Me.Width = My.Computer.Screen.Bounds.Width
這是設(shè)置窗體的長(zhǎng)寬和屏幕的分辨率一樣大小,相當(dāng)于全屏。
如果Me.WindowState=FormWindowState.Maximized的話,只是單純的將窗體最大化,但恢復(fù)窗口大小后窗體的大小實(shí)際上還和原來一樣大。
Me.Height = My.Computer.Screen.Bounds.Height\x0d\x0aMe.Width = My.Computer.Screen.Bounds.Width\x0d\x0a這是設(shè)置窗體的長(zhǎng)寬和屏幕的分辨率一樣大小,相當(dāng)于全屏。\x0d\x0a如果Me.WindowState=FormWindowState.Maximized的話,只是單純的將窗體最大化,但恢復(fù)窗口大小后窗體的大小實(shí)際上還和原來一樣大。
文章標(biāo)題:vb.net窗體全屏 win7窗口全屏
文章鏈接:http://aaarwkj.com/article42/hhpjec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷、響應(yīng)式網(wǎng)站、Google、軟件開發(fā)、App開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)