




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 本章的學習要點本章的學習要點v窗體的結構窗體的結構v窗體的屬性、事件、方法窗體的屬性、事件、方法v多窗體多窗體vmdimdi窗體窗體v窗體的結構與窗體的結構與windowswindows下的窗口十分類似,在程序運下的窗口十分類似,在程序運行前,即設計階段,稱為窗體;程序運行后也可以行前,即設計階段,稱為窗體;程序運行后也可以稱為窗口。稱為窗口。 3.1 窗體的結構窗體的結構系統(tǒng)菜單系統(tǒng)菜單窗體窗體最小化按鈕最小化按鈕最大化按鈕最大化按鈕關閉按鈕關閉按鈕標題欄標題欄 窗體名窗體名. caption=. caption=字符串字符串v窗體的屬性窗體的屬性 namename:設置窗體的名稱。:設置
2、窗體的名稱。 所有對象都具有該屬性;所有對象都具有該屬性; 在同一范圍內不允許該屬性值相同;在同一范圍內不允許該屬性值相同; 該屬性只能通過屬性窗口設置,在代碼窗口中不能該屬性只能通過屬性窗口設置,在代碼窗口中不能改變改變。 captioncaption:設置窗體標題欄上顯示的內容。:設置窗體標題欄上顯示的內容。 在代碼窗口修改該屬性值的語法格式為:在代碼窗口修改該屬性值的語法格式為:注意注意captioncaption屬性與屬性與namename屬性的區(qū)別!屬性的區(qū)別!3.2 窗體的三要素窗體的三要素namecaptioncommand1.caption=確定確定對象名對象名.屬性名屬性名=
3、屬性值屬性值sub 對象名對象名_事件名事件名()對象名對象名.方法方法 (參數(shù)參數(shù)) 窗體名窗體名.autoredraw=true | false.autoredraw=true | falsev窗體的屬性窗體的屬性 autoredrawautoredraw:設置窗體被遮蓋后是否要自動重繪窗體上的內容。語法格式為: backcolorbackcolor、forecolorforecolor:返回或設置窗體的背景顏色和前景顏色。屬性值是一個16進制的常數(shù);通常在編寫代碼時,常用qbcolor或rgb函數(shù)為其設置顏色。3.2 窗體的三要素窗體的三要素form1.backcolor = form1
4、.backcolor = &h&hff0000 ff0000 低字節(jié)到高字節(jié)依次表示紅、綠和藍的值低字節(jié)到高字節(jié)依次表示紅、綠和藍的值form1.backcolor = rgb(255, 0, 0)form1.backcolor = rgb(255, 0, 0)form1.forecolor = vbredform1.forecolor = vbredrgb顏色函數(shù)講解顏色函數(shù)講解 藍藍紅紅綠綠256等份等份256等份等份256等份等份form1.backcolor = rgb(255, 13, 222)v窗體的屬性窗體的屬性 borderstyle borderstyle :
5、設置窗體的邊框樣式。語法格式:3.2 窗體的三要素窗體的三要素窗體名窗體名.borderstyle=0 | 1 | 2 | 3 | 4 | 5.borderstyle=0 | 1 | 2 | 3 | 4 | 5屬性值說 明0-none窗體無邊框1-fixed single含控制菜單、標題欄、最大、最小化按鈕的固定單邊框2-sizable默認值,可調整的雙線邊框。3-fixed double含控制菜單、標題欄,無最大、最小化按鈕、窗體大小固定的雙線邊框。4-fixed tool window只有關閉按鈕、縮小的字體顯示標題欄、窗體大小固定的工具窗口。5-sizable tool window只有
6、關閉按鈕,并用縮小的字體顯示標題欄、窗體大小可變的工具窗口。注意:注意:該屬性只能在屬性窗口中設置該屬性只能在屬性窗口中設置v窗體的屬性窗體的屬性 enabled enabled :設置窗體是否被響應。語法格式: 當該屬性值為true(默認值)時表示窗體有效,能響應用戶或系統(tǒng)事件;為false時表示窗體無效,不能響應,并且窗體上的所以控件都無效。3.2 窗體的三要素窗體的三要素 窗體名窗體名. enabled=true | false. enabled=true | falsev窗體的屬性窗體的屬性 fontfont系列字體屬性系列字體屬性:設置窗體上文本的字體、字號、字形等樣式。3.2 窗體
7、的三要素窗體的三要素 屬 性類 型 功 能fontname字符型決定對象上正文的字體(缺省為宋體)fontsize整型決定對象上正文的字體大小fontbold邏輯型決定對象上正文是否是粗體fontitalic邏輯型決定對象上正文是否是斜體fontunderline邏輯型決定對象上正文是否帶下劃線fontstrikethru 邏輯型決定對象上正文是否加一刪除線v窗體的屬性窗體的屬性 heightheight、widthwidth:分別決定窗體大小的高度和寬度。 toptop、leftleft:表示窗體到屏幕上邊框和左邊框的距離。3.2 窗體的三要素窗體的三要素topheightleftwidth
8、原點原點(0,0)xyv窗體的屬性窗體的屬性 controlboxcontrolbox:取值為true或false,表示窗體左上角是否有控制菜單。 iconicon:返回或設置窗體左上角顯示的圖標或最小化時顯示的圖標,通常為.ico格式的圖標文件,僅當controlbox屬性值取true 該屬性才生效。 minbuttonminbutton 、maxbuttonmaxbutton:設置窗體最小、最大化按鈕是否有效。語法格式: 3.2 窗體的三要素窗體的三要素窗體名. minbutton =true | false窗體名. maxbutton=true | falsev窗體的屬性窗體的屬性 pi
9、cturepicture:設置窗體的背景圖片。語法格式: visiblevisible:設置窗體在執(zhí)行時是否可見。語法格式: 3.2 窗體的三要素窗體的三要素 窗體名窗體名. picture=loadpicture (. picture=loadpicture (圖片文件名圖片文件名) 窗體名窗體名. visible=true | false. visible=true | falsev窗體的事件窗體的事件 不同的對象對應不同事件的發(fā)生,不同的對象對應不同事件的發(fā)生,vbvb中窗體有很多中窗體有很多事件。在一個窗體的代碼窗口中列出了所有窗體事件。事件。在一個窗體的代碼窗口中列出了所有窗體事件。
10、3.2 窗體的三要素窗體的三要素在此選中對象在此選中對象列出選中對象事件列出選中對象事件v窗體的事件窗體的事件:當窗體變?yōu)榧せ畹漠斍按翱跁r,引發(fā)本事件。 clickclick:當用戶單擊窗體時觸發(fā)本事件。 dblclickdblclick:當用戶雙擊窗體時觸發(fā)本事件。 deactivatedeactivate:當窗體失去激活狀態(tài),即另一個窗體成為當前窗口時,引發(fā)本事件。 loadload:當窗體被加載到內存時觸發(fā)本事件。load事件往往用于在啟動程序時對屬性和變量進行初始化。 unloadunload:當關閉窗體時,觸發(fā)卸載事件,將窗體從內存中卸載。注意:注意:load事件發(fā)生時窗體是不活動的
11、,而事件發(fā)生時窗體是不活動的,而activate事件發(fā)事件發(fā)生時窗體是活動的,生時窗體是活動的,print方法不能在不活動窗體上使用,方法不能在不活動窗體上使用,因此因此print不能用于不能用于load事件中。事件中。3.2 窗體的三要素窗體的三要素 “雙擊雙擊”實際上觸發(fā)兩個事件,第一次按鼠實際上觸發(fā)兩個事件,第一次按鼠標按鈕時產生標按鈕時產生clickclick單擊事件,第二次按鼠標單擊事件,第二次按鼠標按鈕時產生按鈕時產生dblclickdblclick事件。事件。 private sub form_click()private sub form_click() form1.backc
12、olor = vbred form1.backcolor = vbredend subend subprivate sub form_click()private sub form_click() form1.backcolor = vbred form1.backcolor = vbredend subend sub 當觸發(fā)了當觸發(fā)了form對象的對象的click事件時,該事件時,該事件過程事件過程form_click就會被執(zhí)行。就會被執(zhí)行。? 窗體名稱為窗體名稱為form1,為何在其事件過程中,為何在其事件過程中用用form,詳見課本,詳見課本18面。面。 當用戶雙擊窗體時,窗體不斷變小,
13、則當用戶雙擊窗體時,窗體不斷變小,則應該添加什么事件過程應該添加什么事件過程?例3.1v print在load和activate事件中的區(qū)別。private sub form_load() print *end subprivate sub form_activate() print *end sub窗體事件示例&例:程序運行時,用戶在窗體上輸入字符時,窗體上顯示輸入結果。 分析: 添加什么事件過程 在窗體上顯示輸入結果用什么代碼 當用戶輸入a時觸發(fā)了form_keypress事件過程,該過程的參數(shù)keyascii值是多少?通過什么方法在窗體上顯示出a? 代碼:form_keypres
14、s97private sub form_keypress(keyascii as integer) print chr(keyascii)end subform1.printchr(x)函數(shù):將函數(shù):將ascii碼轉換為對應的字符碼轉換為對應的字符;v窗體的方法 在代碼窗口中,輸入“form1.”后,會顯示該窗體對象的所有屬性和方法。3.2 窗體的三要素對象的屬性和方法對象的屬性和方法屬性屬性方法方法v窗體的方法 show和hide:分別用于顯示和隱藏窗體。調用格式: 窗體名.show style 窗體名.hide 窗體名缺省,表示顯示或隱藏當前窗體; show方法的style參數(shù)取值: vb
15、model(模式):不允許用戶同時與其他窗體交互。 vbmodeless(無模式):允許用戶同時與其他窗體交互。3.2 窗體的三要素v窗體的方法 print:用于將文本輸出到窗體的一行上。調用格式: 對象名.print 輸出項列表; | , 對象除了窗體外,還可以是圖片框(picturebox)、debug或打印機(printer),若缺省對象名,表示將文本輸出到當前窗體上。 輸出項列表:是由0個、1個或多個待輸出的數(shù)值表達式或字符串表達式構成;當輸出項是由多個項構成,則中間必須用逗號或分號分隔;若print后什么都不跟,則表示輸出一個空行。3.2 窗體的三要素如下代碼:如下代碼: priva
16、te sub form_click() print 1, -2 print print we, studyend sub標準格式標準格式v窗體的方法 print:用于將文本輸出到窗體的一行上。調用格式: 對象名.print 輸出項列表; | , 對象除了窗體外,還可以是圖片框(picturebox)、debug或打印機(printer),若缺省對象名,表示將文本輸出到當前窗體上。 輸出項列表:是由0個、1個或多個待輸出的數(shù)值表達式或字符串表達式構成;當輸出項是由多個項構成,則中間必須用逗號或分號分隔;若print后什么都不跟,則表示輸出一個空行。3.2 窗體的三要素如下代碼:如下代碼: pri
17、vate sub form_click() print 1; -2 print print we; studyend sub緊縮格式緊縮格式注意:標準格式即參數(shù)以 “,”分割,下一個輸出項將與上一個輸出項間隔14列;緊縮格式即參數(shù)以 “;”分割,下一個輸出項將以緊湊格式,緊跟著上一個輸出項輸出。print方法輸出的位置是由窗體的繪圖坐標currentx和currenty屬性決定的,默認為對象的左上角(0,0)。該方法可以結合定位輸出函數(shù)一起使用:spc(n):在下一個輸出項前插入n個空格;tab(n):輸出定位在絕對n列號上。代碼:1197513111591317private sub for
18、m_click()end sub print tab(11); a print tab(9); b; spc(3); b print tab(7); c; spc(3); c; spc(3); c print tab(5); d; spc(3); d; spc(3); d; spc(3); d108643333333.2 窗體的三要素v窗體的方法 cls方法:用于清除運行時窗體上或圖形上的用print方法生成的文本和圖形。語法格式: 對象名.cls 對象名可以是窗體或圖片框。當對象名缺省時,表示清除當前窗體上的內容。例如:form1.clscls picture1.cls3.2 窗體的三要素v
19、窗體的方法 move(移動)方法:用于移動對象,并且可以在移動時變化對象的大小。 語法格式:對象名.move left ,top,width,height其中,對象名可以是窗體和除時鐘、菜單以外的所有控件。窗體名缺省(即未選對象名)時,默認為當前窗體。move方法中的left、top、width、height4個參數(shù),單位為twip(像素)。!&p32 3.2 窗體的三要素&例:編寫一個程序,實現(xiàn)功能:每單擊窗體一次,窗體向右移動。 思路:窗體向右移動是一個動作,應該執(zhí)行什么方法;該動作是被什么對象的什么事件觸發(fā)的? 代碼: private sub form_click() f
20、orm1.move left + 1500 end submove窗體窗體clickform1.move left + 1500, top,width+1500?每次移動并變大如何實現(xiàn)每次移動并變大如何實現(xiàn)例3.3 窗體的簡單應用v編程實現(xiàn):單擊和雙擊窗體時分別改變標簽和窗體標題欄的文字,單擊單選按鈕改變標簽文字。v界面設計對象屬性屬性值formnameform1caption學習之道labelnamelabel1caption空白backcolor &h00ffc0c0&optionbuttonnameoption1caption上課optionbuttonnameoptio
21、n2caption復習屬性設置屬性設置v編寫代碼private sub form_click() 窗體的單擊事件過程 label1.caption = 成功通過考試!end subprivate sub form_dblclick() 窗體的雙擊事件過程 form1.caption = 歡迎你學習vb!end subprivate sub option1_click() 單選按鈕的單擊事件過程 label1.caption = 聽明白 勤思考 記下來!end subprivate sub option2_click() 單選按鈕的單擊事件過程 label1.caption = 多上機 善提問
22、多總結!end sub3.3 多窗體v多窗體是在應用程序中有多個并列的普通窗體。v多窗體的建立步驟 : (1)建立第一個窗體,選擇“新建”選項卡創(chuàng)建一個新窗體,若選擇“現(xiàn)存”選項卡則添加一個屬于其他工程的窗體。 (2)通過選擇“工程”“添加窗體”或工具欄上的添加窗體按鈕來創(chuàng)建另一個新窗體。3.3 多窗體v多窗體的運行順序設置:v選擇“工程”菜單中的最后一項“工程1屬性”命令,在彈出的對話框中改變啟動對象 例3.4v設計一個多窗體,實現(xiàn)兩個界面的交換。為程序添加窗體form2,form1窗體加載一個圖片,form2窗體加載時為空白。v單文檔界面sdi(single documents interface)任何時刻都只能打開一個文檔,若要打開別的文檔,則必須先關閉原來的文檔。v多文檔界面mdi(multi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度個人之間農業(yè)貸款借款合同
- 家長與孩子二零二五年度家務勞動責任履行協(xié)議
- 2025年度泳池救生員安全責任及應急響應規(guī)范協(xié)議
- 2025年度智慧城市建設預付款合作合同
- 二零二五年度酒店管理營業(yè)執(zhí)照及品牌加盟轉讓合同
- 二零二五年度房屋維修基金頂賬返還協(xié)議書
- 二零二五年度外墻保溫涂料產品環(huán)保認證與綠色標識合同
- 二零二五年度女方婚前財產協(xié)議婚姻安全與婚姻風險規(guī)避合同
- 二零二五年度裝配行業(yè)產品研發(fā)終止合同
- 石家莊市2025年度勞動合同電子化管理規(guī)范
- 2025福建省電力電網有限公司高校畢業(yè)生(第一批)招聘748人筆試參考題庫附帶答案詳解
- 初中英語語法時態(tài)總復習課件
- 零碳數(shù)據(jù)算力中心項目可行性研究報告
- 研究生復試流程
- 220KV線路監(jiān)理實施細則
- 濰坊市2025屆高三下學期開學考(診斷性調研監(jiān)測)政治試題(含答案)
- 2025年浙江國有資本運營有限公司招聘筆試參考題庫含答案解析
- 2025年春新北師大版物理八年級下冊課件 第六章 質量和密度 第二節(jié) 物質的密度
- 2025年職業(yè)教案編寫指南:教師技巧
- 人教版(2025新版)七年級下冊數(shù)學第七章 相交線與平行線 單元測試卷(含答案)
- 2024年股權轉讓合同書(含管理層收購條款)
評論
0/150
提交評論