零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體_第1頁
零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體_第2頁
零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體_第3頁
零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體_第4頁
零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體_第5頁
已閱讀5頁,還剩60頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第8章界面初探——窗體窗體是VisualBasic開發(fā)應(yīng)用程序中最主要控件之一。用戶經(jīng)過窗體及其所見控件與應(yīng)用程序進(jìn)行交互操作。窗體包含單文檔窗體(SDI窗體)和多文檔窗體(MDI窗體)。學(xué)習(xí)本章,讀者將熟練掌握窗體開發(fā)使用技巧。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第1頁8.1單文檔窗體SDI窗體是應(yīng)用程序界面其它控件最主要容器。窗體作為最直接交互界面,包含很多屬性、方法和事件。本節(jié)將介紹單文檔窗體(SDI窗體)設(shè)計(jì)和使用。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第2頁8.1.1什么是SDI窗體開啟VisualBasic應(yīng)用程序后,會顯示一個(gè)默認(rèn)Visual

Basic工程。普通包含一個(gè)標(biāo)準(zhǔn)窗體,其界面組成如圖8.1所表示。包含標(biāo)題欄、標(biāo)題、最小化按鈕、最大化按鈕、關(guān)閉按鈕等。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第3頁圖8.1標(biāo)準(zhǔn)窗體標(biāo)準(zhǔn)窗體提供了一個(gè)空白應(yīng)用程序界面。在設(shè)計(jì)階段還要添加控件來完善其功效。控件是為執(zhí)行特定任務(wù)而設(shè)計(jì)對象,和窗體一樣有相關(guān)屬性、方法、事件。每個(gè)控件能夠?qū)崿F(xiàn)特定功效。如文本框控件能夠顯示文本,設(shè)置不一樣字體、顏色、對齊方式等。窗體和控件共同組成了應(yīng)用程序界面。標(biāo)準(zhǔn)窗體包含很多屬性、方法和事件,如圖8.2所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第4頁圖8.2“屬性”面板零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第5頁8.1.2常見公共屬性VisualBasic中全部對象屬性都不盡相同。不過部分屬性是許多對象共有。主要公共屬性如表8.1所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第6頁表8.1公共屬性英文屬性中文屬性英文屬性中文屬性Name名稱Left左邊距Index索引Top頂部Height高度Enabled激活Width寬度Visible可見零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第7頁屬性使用方法與變量相同,區(qū)分是使用“.”來表明是對象屬性。其標(biāo)準(zhǔn)語法如下:Object.attribute=value參數(shù)說明:Object為必需項(xiàng)。如果是當(dāng)前窗體,可以使用me關(guān)鍵字來代替。Attribute為必需項(xiàng)。對象屬性名稱。Value為必需項(xiàng)。屬性值可認(rèn)為字符、數(shù)值、其他可用對象。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第8頁【示例8-1】設(shè)置窗體屬性。代碼以下:

'窗體左邊距為0Form1.left=0'窗體頂部為0,與上一句共同顯示在屏幕左上角Form1.top=0'窗體顯示不可見Form1.Visible=false零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第9頁1.Caption屬性Caption屬性為出現(xiàn)在窗體標(biāo)題欄中名稱。當(dāng)窗體最小化時(shí),該標(biāo)題文本顯示在窗體圖標(biāo)右側(cè)。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第10頁【示例8-2】設(shè)置窗體Caption屬性。代碼以下:Form1.caption=”第一個(gè)窗體標(biāo)題”'顯示窗體標(biāo)題注意:窗體名稱和標(biāo)題是完全不一樣。窗體名稱在程序中指代窗體。標(biāo)題則是在標(biāo)題欄中顯示窗體標(biāo)題名稱。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第11頁2.Font屬性Font屬性設(shè)置窗體上字體屬性。此設(shè)置并不影響窗體標(biāo)題欄中標(biāo)題。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第12頁【示例8-3】設(shè)置窗體Font屬性。代碼以下:'設(shè)置窗體字體名稱Form1.Font.Name

="宋體"

'設(shè)置窗體字體是否加粗為trueForm1.Font.Bold

=True

零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第13頁3.Backcolor和Forecolor屬性窗體背景顏色和前景顏色屬性。其中Backcolor返回或設(shè)置對象背景顏色;Forecolor返回或設(shè)置于對象上顯示文本和圖形前景顏色。VisualBasic中默認(rèn)窗體背景顏色為灰色。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第14頁【示例8-4】設(shè)置窗體Backcolor和Forecolor屬性。代碼以下:'設(shè)置窗體背景顏色為黑色Form1.Backcolor

=vbBlack

'設(shè)置窗體背景顏色為白色Form1.Forecolor

=vbWhite

零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第15頁4.Icon屬性Icon屬性指定窗體最小化時(shí)顯示圖標(biāo)。在Windows中,圖標(biāo)出現(xiàn)在標(biāo)題欄內(nèi)。設(shè)計(jì)階段能夠賦予圖標(biāo)屬性,選擇指定圖標(biāo)。該屬性支持后綴為ico圖形圖像文件。注意:在現(xiàn)在提倡個(gè)性年代,應(yīng)用程序也要含有獨(dú)特個(gè)性,如選擇一個(gè)尤其Icon圖標(biāo)。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第16頁5.Windowstate屬性Windowstate屬性指定窗體顯示時(shí)狀態(tài)(正常、最小化或是最大化)。默認(rèn)顯示為vbnormal(保持正常大?。T搶傩赃€包含其它2種屬性值vbminimized(最小化)、vbmaximized(最大化)。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第17頁【示例8-5】設(shè)置窗體Windowstate屬性。代碼以下:Form1.Windowstate=vbnormal'保持窗體正常大小零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第18頁6.Borderstyle屬性Borderstyle屬性指定窗體顯示時(shí)邊框外觀(正常、最小化或是最大化)。默認(rèn)顯示為vbsizable。詳細(xì)屬性值如表8.2所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第19頁表8.2borderstyle屬性設(shè)置常

量值說

明vbNone0無邊框vbFixedSingle1固定單線框vbSizable2可變尺寸框(僅對窗體)vbFixedDoubleDialog3固定雙線框(僅對窗體)vbFixedToolWindow4固定工具窗體vbSizableToolWinow5可變工具窗體零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第20頁8.1.3常見方法方法實(shí)際是內(nèi)置于對象程序函數(shù)。調(diào)用方法標(biāo)準(zhǔn)語法以下:Object.action其中,Object為對象名稱,action為方法名稱。窗體中內(nèi)置以下主要方法。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第21頁1.Show方法該方法用來顯示Form對象。語法和參數(shù)說明以下:object.Show

style,ownerform參數(shù)說明:Object為必需項(xiàng),表示顯示對象。Style為可選項(xiàng),其決定顯示窗體為模式窗體還是非模式窗體。Ownerform為可選項(xiàng),指定在某個(gè)窗體內(nèi)顯示。Show方法與將窗體Visible屬性設(shè)置為True是相同。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第22頁【示例8-6】調(diào)用Show方法顯示窗體。Form1.show零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第23頁2.Hide方法Hide方法與將窗體Visible屬性設(shè)置為False是相同,主要用來隱藏Form對象。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第24頁【示例8-7】調(diào)用Hide方法隱藏窗體。form1.Hide零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第25頁3.Setfocus方法Setfocus方法將窗體賦予焦點(diǎn),顯示為當(dāng)前窗體。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第26頁【示例8-8】實(shí)現(xiàn)賦予窗體焦點(diǎn)。代碼以下:Form1.setfocus零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第27頁4.Refresh方法Refresh強(qiáng)制全部重繪一個(gè)窗體或控件。在以下情況下使用Refresh方法。在另一個(gè)窗體被加載時(shí)顯示一個(gè)窗體全部。更新如FileListBox控件之類文件系統(tǒng)列表框內(nèi)容。更新Data控件數(shù)據(jù)統(tǒng)計(jì)。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第28頁【示例8-9】調(diào)用Refresh方法刷新窗體。代碼以下:Form1.refresh零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第29頁8.1.4常見事件窗體中事件在VisualBasic中占有非常主要地位。窗體常見事件包含Load事件、Unload事件、Click事件、Dblclick事件、Activate事件以及Deactivate事件。窗體中事件詳細(xì)以下:零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第30頁1.Load和Unload事件Load語句采取隱式方式加載窗體,采取Show方法顯示加載窗體。其標(biāo)準(zhǔn)語法以下:Loadfrmapp當(dāng)隱藏窗體并不從內(nèi)存卸載時(shí)使用Hide方法,當(dāng)從內(nèi)存卸載該對象時(shí)需要使用Unload事件。其標(biāo)準(zhǔn)語法以下:Unloadfrmapp零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第31頁【示例8-10】調(diào)用Load和Unload方法加載和卸載窗體。代碼以下:'隱式加載窗體Load

frmmain'卸載窗體Unload

frmapp零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第32頁2.Click和Dblclick事件Click和Dblclick為窗體單擊和雙擊鼠標(biāo)事件。Click和Dblclick事件是最通用事件。按下左鍵并彈起為Click事件。重復(fù)兩次為Dblclick事件。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第33頁3.Activate和Deactivate事件當(dāng)窗體變?yōu)榛顒哟绑w時(shí),觸發(fā)Activate事件;當(dāng)另一個(gè)窗體變?yōu)榛顒哟绑w時(shí),觸發(fā)當(dāng)前窗體Deactivate事件。當(dāng)用戶單擊或雙擊窗體時(shí),自動將當(dāng)前選擇窗體設(shè)置為活動窗體,觸發(fā)Activate事件。假如其它窗體被激活為活動窗體時(shí),自動將當(dāng)前選擇活動窗體設(shè)置為非活動窗體,觸發(fā)Deactivate事件。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第34頁8.1.5設(shè)置開啟窗體當(dāng)程序?yàn)槲ㄒ淮绑w時(shí),程序開啟并自動執(zhí)行。該窗體稱為開啟窗體或開啟對象。當(dāng)程序運(yùn)行時(shí),VisualBasic會將開啟窗體加載到內(nèi)存并顯示直至程序結(jié)束。假如程序包含多個(gè)窗體,必須將其中一個(gè)設(shè)為開啟窗體或在SubMain過程中設(shè)定。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第35頁【示例8-11】設(shè)置程序運(yùn)行開啟窗體。操作過程以下所表示。(1)選擇“工程”|“工程1屬性”命令,彈出“工程屬性”對話框。其中,“工程1”為工程名稱,如圖8.3所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第36頁圖8.3“工程屬性”對話框(2)在“工程屬性”對話框中,選擇“通用”選項(xiàng)卡。在“開啟對象”下拉列表框中選擇待設(shè)定開啟窗體,如本例設(shè)定form1為開啟對象,如圖8.4所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第37頁圖8.4設(shè)置開啟窗體(3)單擊“確定”按鈕,將開啟對象form1窗體設(shè)置為開啟窗體。單擊工具欄中“開啟”按鈕或按下F5鍵將運(yùn)行設(shè)定開啟窗體“form1”。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第38頁8.1.6SDI窗體實(shí)戰(zhàn)本節(jié)創(chuàng)建SDI窗體示例“關(guān)于窗體”和窗體屬性。關(guān)于窗體是Windows應(yīng)用程序中主要窗體,用以申明程序名稱、版本、企業(yè)名稱。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第39頁【示例8-12】創(chuàng)建通用關(guān)于窗體。本例將使用模板創(chuàng)建一個(gè)通用“關(guān)于窗體”對話框,并設(shè)定程序名稱和企業(yè)名稱內(nèi)容。(1)新建一個(gè)工程。(2)選擇“工程”|“添加窗體”命令,彈出“添加窗體”對話框,如圖8.5所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第40頁圖8.5“添加窗體”對話框(3)選擇“關(guān)于”對話框圖標(biāo),單擊“打開”按鈕,自動添加“關(guān)于我應(yīng)用程序”對話框,如圖8.6所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第41頁圖8.6“關(guān)于我應(yīng)用程序”對話框(4)選擇“工程”|“工程1屬性”命令,彈出“工程屬性”對話框。選擇“生成”選項(xiàng)卡。其中“版本號”包含主版本、次版本、修正。在“主版本”文本框中輸入,在“標(biāo)題”文本框中輸入“進(jìn)銷存程序”。單擊“確定”按鈕,如圖8.7所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第42頁圖8.7“工程屬性”對話框(5)設(shè)計(jì)模式下單擊標(biāo)簽lbldescryption“應(yīng)用程序描述”,設(shè)置caption屬性為“這是一個(gè)簡單進(jìn)銷存程序”。(6)按下F5鍵運(yùn)行程序。運(yùn)行窗體如圖8.8所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第43頁圖8.8“關(guān)于進(jìn)銷存程序”對話框(7)以上為VisualBasic通用“關(guān)于窗體”模板。(8)除了使用“創(chuàng)建窗體”向?qū)?,還能夠在空白窗體上依據(jù)設(shè)計(jì)需要添加控件,設(shè)計(jì)成別具一格個(gè)性“關(guān)于窗體”。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第44頁【示例8-13】創(chuàng)建動態(tài)移動CommandButton控件。本示例將創(chuàng)建一個(gè)CommandButton控件,初始為左上角,每單擊一次向右下角移動100緹。(1)新建一個(gè)工程,并新建一個(gè)窗體。(2)雙擊工具箱中CommandButton圖標(biāo),窗體自動添加一個(gè)CommandButton控件,默認(rèn)Caption屬性為Command1。雙擊Command1按鈕,彈出代碼編輯窗口。輸入以下代碼:零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第45頁(3)單擊工具欄中“開啟”圖標(biāo)或按下F5鍵運(yùn)行程序。初始Command1按鈕位于左上角,每次單擊Command1按鈕,自動向右下角移動100緹,如圖8.9所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第46頁圖8.9示例8-13運(yùn)行結(jié)果零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第47頁8.2多文檔窗體MDIWindows應(yīng)用程序中Office系列文件為最經(jīng)典多文檔窗體(MDI窗體)。多文檔窗體允許在單個(gè)主窗體中包含多個(gè)子窗體應(yīng)用程序。本節(jié)介紹怎樣創(chuàng)建和使用MDI窗體。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第48頁8.2.1什么是MDI窗體MDI窗體中父窗體是包含子窗體主要窗體。父窗體位于最外層,包含其內(nèi)子窗體。其操作如最大化、最小化、關(guān)閉將同時(shí)操作子窗體。運(yùn)行窗體如圖8.10所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第49頁圖8.10運(yùn)行父窗體多文檔窗體在VisualBasic應(yīng)用程序中只能有一個(gè)父窗體。不允許使用Print方法或其它任何圖形方法在父窗體上顯示信息。父窗體和全部子窗體公用任務(wù)欄上同一個(gè)圖標(biāo)表示。當(dāng)子窗體定義了一個(gè)菜單,則該菜單顯示在父窗體菜單欄上。假如主窗體定義一個(gè)菜單,當(dāng)擁有自己菜單子窗體處于激活狀態(tài)時(shí),父窗體菜單不顯示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第50頁8.2.2建立父窗體創(chuàng)建父窗體和普通窗體略有不一樣。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第51頁【示例8-14】創(chuàng)建MDI窗體中父窗體。本例將創(chuàng)建一個(gè)MDI窗體,并創(chuàng)建一個(gè)父窗體。(1)創(chuàng)建一個(gè)父窗體。選擇“工程”|“添加MDI窗體”命令或“工具欄”|“添加窗體”下拉菜單中“添加MDI窗體”命令,如圖8.11所表示,彈出“添加MDI窗體”對話框,如圖8.12所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第52頁圖8.11添加MDI窗體菜單零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第53頁圖8.12添加MDI窗體(2)選擇“MDI窗體”圖標(biāo),單擊“打開”按鈕。自動添加父窗體,注意父窗體背景顏色較深,如圖8.13所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第54頁圖8.13父窗體(3)在工程管理面板中,MDI窗體添加到窗體目錄下。注意查看工程窗體中MDI窗體圖標(biāo)與普通窗體圖標(biāo)不一樣,如圖8.14所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第55頁圖8.14工程管理MDI窗體屬性中有兩個(gè)尤其屬性:Autoshowchildren和Scrollbars屬性。Autoshowchildren屬性決定了子窗體在加載時(shí)是否自動顯示。假如該屬性為默認(rèn)值,子窗體自動顯示出來。Scrollbars屬性決定了父窗體在運(yùn)行時(shí)是否需要滾動條。當(dāng)該屬性設(shè)置為默認(rèn)值True時(shí),假如子窗體延伸到父窗體外部,滾動條自動顯示在父窗體上。當(dāng)設(shè)為False時(shí),不顯示滾動條。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第56頁8.2.3建立子窗體子窗體建立相對簡單一些。一個(gè)子窗體只需要將MDIchild屬性設(shè)置為True即成為標(biāo)準(zhǔn)窗體。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第57頁【示例8-15】創(chuàng)建MDI窗體中子窗體。本例將創(chuàng)建一個(gè)MDI窗體中子窗體。與上例共同組成創(chuàng)建MDI窗體。(1)選擇“工程”|“添加窗體”命令,彈出“添加窗體”對話框。選擇“窗體”圖標(biāo),單擊“確定”按鈕。(2)在添加窗體上,設(shè)置MDIchild屬性為true。注意,窗體如圖8.14所表示。子窗體與父窗體圖標(biāo)顯著不一樣。除此之外,一切編程操作同普通窗體一樣,如圖8.15所表示。零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第58頁圖8.15創(chuàng)建子窗體零點(diǎn)起飛學(xué)VisualBasic之界面初探窗體第59頁8.2.4MDI窗體實(shí)戰(zhàn)本節(jié)創(chuàng)建包含一個(gè)TextBox控件和CommandButton控件MDI窗體。零點(diǎn)起飛學(xué)V

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論