版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章窗體和常用控件本章導(dǎo)讀:本章的主要內(nèi)容是窗體和常用控件。然后通過項(xiàng)目“MyQQ的登錄和注冊(cè)窗體”為導(dǎo)向,三個(gè)任務(wù)(創(chuàng)建登錄窗體、創(chuàng)建用戶注冊(cè)窗體和編輯QQ主窗體)為驅(qū)動(dòng),學(xué)習(xí)有關(guān)窗體和控件的相關(guān)知識(shí),主要是對(duì)窗體的常見屬性和事件的設(shè)置,各類常用控件(文本類、選擇類、容器類等)的屬性和事件的設(shè)置,本項(xiàng)目的完成為后一章節(jié)項(xiàng)目完成奠定基礎(chǔ)。第8章窗體和常用控件
——任務(wù)一創(chuàng)建登錄窗體一、任務(wù)描述:創(chuàng)建一個(gè)窗體應(yīng)用程序,設(shè)置窗體的屬性,如下圖所示:窗體界面設(shè)計(jì)具體要求如下:1、更改窗體默認(rèn)顯示圖標(biāo)。2、修改窗體名稱。3、設(shè)置窗體背景圖。4、窗體程序運(yùn)行時(shí)窗體在屏幕居中顯示。5、窗體不可最大化、不可拖動(dòng)更改大小。一、任務(wù)描述:窗體事件設(shè)置具體要求如下:1、窗體加載前詢問是否顯示,如下圖所示,單擊【確定】顯示登錄窗體。一、任務(wù)描述:窗體事件設(shè)置具體要求如下:2、單擊登錄窗體右上角的關(guān)閉圖標(biāo)時(shí),詢問登錄窗體是否關(guān)閉,如左圖所示,單擊【是】退出登錄窗體,單擊【否】則返回登錄窗體。3、單擊登錄窗體時(shí),顯示如右下圖的消息框。二、知識(shí)準(zhǔn)備:1添加和刪除窗體2窗體的屬性3窗體的顯示與隱藏4窗體事件二、知識(shí)準(zhǔn)備:1、添加和刪除窗體創(chuàng)建一個(gè)Windows窗體應(yīng)用程序后,默認(rèn)有一個(gè)窗體。如果想向項(xiàng)目中添加一個(gè)新窗體,可以在項(xiàng)目名稱上單擊鼠標(biāo)右鍵,依次單擊【Add】|【NewItem】或【W(wǎng)indowsForm】,打開如圖所示對(duì)話框。二、知識(shí)準(zhǔn)備:1、添加和刪除窗體選擇【W(wǎng)indowsForm】,在【Name】后輸入窗體名稱,然后單擊【Add】按鈕,即可向項(xiàng)目中添加一個(gè)新的窗體。一個(gè)完整的Windows應(yīng)用程序由多個(gè)窗體組成,項(xiàng)目啟動(dòng)時(shí)需要設(shè)置啟動(dòng)窗體。啟動(dòng)窗體是在Program.cs文件中設(shè)置的,改變Run方法的參數(shù),可以達(dá)到設(shè)置啟動(dòng)窗體的效果。Application.Run(newForm1());//默認(rèn)啟動(dòng)窗體是Form1可以通過修改Run里的參數(shù)來修改啟動(dòng)窗體。二、知識(shí)準(zhǔn)備:2、窗體的屬性窗體包含一些基本的組成要素,如圖標(biāo)、標(biāo)題、顯示位置、背景顏色和背景圖片等,這些要素的設(shè)置可以通過窗體的【屬性】面板,也可以通過代碼進(jìn)行設(shè)置。下面來詳細(xì)介紹窗體的常見屬性及屬性設(shè)置方法。二、知識(shí)準(zhǔn)備:2、窗體的屬性添加一個(gè)窗體后,位于窗體左上角的圖標(biāo)是默認(rèn)的圖標(biāo),想要更換圖標(biāo)的話,可以修改【屬性】面板的Icon屬性。(1)窗體的圖標(biāo)(2)窗體的標(biāo)題窗體的默認(rèn)標(biāo)題名稱是Form1、Form2,以修改【屬性】面板的Text屬性來修改窗體的標(biāo)題。二、知識(shí)準(zhǔn)備:2、窗體的屬性可以通過StartPosition屬性來設(shè)置窗體加載時(shí)的顯示位置,StartPosition屬性一共有5個(gè)值,屬性值及說明如下表所示:(3)窗體的顯示位置窗體顯示位置屬性值及意義序號(hào)屬性值意義1Manual位置由Location確定2CenterScreen在當(dāng)前顯示窗口中居中3CnterParent在父窗體中居中4WindowsDefaultBounds定位在Windows默認(rèn)位置,其邊界由Windows默認(rèn)決定5WindowsDefaultLocation定位在Windows默認(rèn)位置,其尺寸在窗體大小中指定二、知識(shí)準(zhǔn)備:2、窗體的屬性可以通過Size屬性中的Width和Height設(shè)置窗體的寬和高。窗體的長(zhǎng)和寬只能是整數(shù)。(4)窗體的大?。?)窗體的背景可以通過BackgroundImage屬性設(shè)置窗體的背景圖片。二、知識(shí)準(zhǔn)備:3、窗體的顯示與隱藏可以通過Show方法顯示窗體。語(yǔ)法:
PublicvoidShow()(1)窗體的顯示(2)窗體的隱藏可以通過Hide方法隱藏窗體。
PublicvoidHide()二、知識(shí)準(zhǔn)備:4、窗體事件PublicEventHandlerLoad(1)Load事件(窗體加載)Windows是事件驅(qū)動(dòng)的操作系統(tǒng),對(duì)Form類的任何交互都通過事件實(shí)現(xiàn)。下面介紹Form的常見事件:Load、Click和FormClosing。窗體加載時(shí)將觸發(fā)Load事件。語(yǔ)法:(2)Click事件(窗體單擊)單擊窗體時(shí)將觸發(fā)Click事件。語(yǔ)法:PublicEventHandlerClick二、知識(shí)準(zhǔn)備:4、窗體事件PubliceventFormClosingEventHandlerFormClosing(3)FormClosing事件(窗體關(guān)閉)窗體關(guān)閉時(shí)將觸發(fā)FormClosing事件。語(yǔ)法:三、任務(wù)分析:1、窗體上主要控件的屬性及功能如下表所示:窗體屬性設(shè)置說明表對(duì)象屬性設(shè)置功能Form1Text:用戶登錄標(biāo)題Icon:1.ico窗體圖標(biāo)BackgroundImage:bg2.png窗體背景圖BackgroundImageLayout:Stretch窗體背景圖拉伸平鋪StartPosition:CenterScreen窗體啟動(dòng)時(shí)顯示在中間MaximizeBox:false窗體啟動(dòng)后不能最大化FormBorderStyle:FixedSingle窗體啟動(dòng)后不能拖動(dòng)修改大小四、任務(wù)實(shí)施:1、打開VS2010,創(chuàng)建一個(gè)名為”form”的窗體應(yīng)用程序。2、按照表設(shè)置窗體的各種屬性。設(shè)置窗體的屬性的方法如下:(1)單擊需要設(shè)置屬性的窗體。(2)單開【屬性】面板,如右圖所示。四、任務(wù)實(shí)施:2、按照表設(shè)置窗體的各種屬性。設(shè)置窗體的屬性的方法如下:(3)找到需要設(shè)置的屬性,以設(shè)置窗體圖標(biāo)為例,找到屬性【Icon】,單擊后面的按鈕,在跳出的對(duì)話框中找到圖標(biāo),單擊【確定】即可。某些屬性只需要直接在后面的輸入框中輸入屬性值即可,例如Text、Name屬性等。四、任務(wù)實(shí)施:3、為窗體添加Load事件。添加Load事件的方法通常是直接雙擊窗體。還可以在屬性面板中,單擊圖標(biāo),找到【Load】進(jìn)行雙擊。privatevoidForm1_Load(objectsender,EventArgse){if(MessageBox.Show("是否查看登錄窗體?","消息",MessageBoxButtons.OKCancel,MessageBoxIcon.Information)==DialogResult.OK){}}四、任務(wù)實(shí)施:4、為窗體添加FormClosing事件。添加FormClosing事件的方法是屬性面板中,單擊圖標(biāo),找到【FormClosing】進(jìn)行雙擊。privatevoidForm1_FormClosing(objectsender,FormClosingEventArgse){if(MessageBox.Show("是否退出登錄?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question)==DialogResult.Yes){}else{e.Cancel=true;}}四、任務(wù)實(shí)施:5、添加Click事件。添加Click事件的方法是屬性面板中,單擊圖標(biāo),找到【Click】進(jìn)行雙擊。privatevoidForm1_Click(objectsender,EventArgse){MessageBox.Show("單擊了登錄窗體!");}四、任務(wù)實(shí)施:6、為窗體添加控件,如下圖所示。有背景圖片的窗體,添加控件后,控件的背景默認(rèn)為白色,會(huì)破壞整個(gè)背景圖片的顯示,這時(shí)候需要設(shè)置Lable標(biāo)題的屬性【BackColor】|【W(wǎng)eb】|【TransParent】。修改第一個(gè)文本框名字為:tb_name,第二個(gè)文本框名字為:tb_pad。沒有設(shè)置TransParent屬性設(shè)置TransParent屬性四、任務(wù)實(shí)施:7、當(dāng)雙擊【登錄】按鈕,為【登錄】按鈕添加Click事件處理程序,默認(rèn)的用戶名:privatevoidbutton1_Click(objectsender,EventArgse){if(tb_name.Text=="admin"&&tb_psd.Text=="123456"){Form1frm1=newForm1();//實(shí)例化登錄窗體
Form2frm2=newForm2();
frm1.Hide();//隱藏登錄窗體
frm2.Show();//顯示Form2窗體
}
}四、任務(wù)實(shí)施:7、當(dāng)雙擊【登錄】按鈕,為【登錄】按鈕添加Click事件處理程序,默認(rèn)的用戶名:如左圖所示輸入用戶名和密碼,單擊【登錄】按鈕時(shí),顯示如右圖所示窗體2。設(shè)置密碼文本框顯示密碼字符為“*”,且長(zhǎng)度不超過6位。五、任務(wù)小結(jié):Application.Run(newForm2());//修改啟動(dòng)窗體是Form2(1)啟動(dòng)窗體是在Program.cs文件中設(shè)置的,改變Run方法的參數(shù),可以達(dá)到設(shè)置啟動(dòng)窗體的效果,比如要設(shè)置Form2先啟動(dòng),則打開Program.cs文件中,修改如下:(2)設(shè)置輸入密碼顯示為“*”,且長(zhǎng)度不超過6位:tb_psd.PasswordChar='*';tb_psd.MaxLength=6;第8章窗體和常用控件
——任務(wù)二創(chuàng)建用戶注冊(cè)窗體
一、任務(wù)描述:?jiǎn)螕羧蝿?wù)一中的“注冊(cè)”按鈕,彈出如左圖所示的注冊(cè)窗體。輸入內(nèi)容完整后,單擊【注冊(cè)】按鈕,彈出如右圖所示已填寫注冊(cè)信息。二、知識(shí)準(zhǔn)備:1文本控件2選擇類控件3分組類控件4PictureBox控件二、知識(shí)準(zhǔn)備:1、文本控件Lable控件又叫標(biāo)簽控件,主要用于顯示不能編輯的文本,標(biāo)識(shí)窗體上的對(duì)象,例如注冊(cè)窗體中的“用戶昵稱”、“性別:”等都是標(biāo)簽控件。標(biāo)簽控件的顯示文本默認(rèn)是Lable1、Lable2等。Lable控件常用屬性如下表所示:(1)Lable控件Lable控件常用屬性屬性設(shè)置方式意義Text(1)單擊Lable控件,打開【屬性】窗口,修改“Text”屬性。(2)通過代碼修改:Lable1.Text=”用戶昵稱”;設(shè)置Lable控件的顯示文本。visible(1)Lable.visible=true;//控件可見(2)Lable.visible=false;//控件不可見Lable控件的可見性。二、知識(shí)準(zhǔn)備:1、文本控件TextBox控件又稱文本控件,主要用于獲取輸入數(shù)據(jù),有時(shí)候也可做顯示文本,如注冊(cè)窗體中的用戶昵稱的輸入。TextBox控件的常見屬性如下表所示:(2)TextBox控件TextBox控件常用屬性屬性設(shè)置方式意義Text(1)單擊Lable控件,打開【屬性】窗口,修改“Text”屬性。(2)通過代碼修改:TextBox1.Text=”西瓜”;設(shè)置TextBox控件的顯示文本。Multiline(1)單擊Lable控件,打開【屬性】窗口,修改“Multiline”屬性。(2)通過代碼修改:TextBox1.Multiline=true;TextBox控件默認(rèn)為單行文本,此屬性值為true表明顯示多行文本設(shè)置TextBox控件的文本行數(shù)。ReadOnly(1)單擊TextBox控件,打開【屬性】窗口,修改“ReadOnly”屬性。(2)通過代碼修改:TextBox1.ReadOnly=true;為true表示文本框只讀,這是不能編輯文本框。TextBox控件的只讀屬性。PasswordChar(1)單擊TextBox控件,打開【屬性】窗口,修改“PsswordChar”屬性。(2)通過代碼修改:tb_psd.PasswordChar='*';在文本框內(nèi)輸入字符時(shí)顯示“*”,“*”可以修改為其他符合。創(chuàng)建密碼文本框。MaxLength(1)單擊TextBox控件,打開【屬性】窗口,修改“MaxLength”屬性。(2)通過代碼修改:tb_psd.MaxLength=6;表明輸入的字符長(zhǎng)度不超過6位。設(shè)置TextBox控件輸入文本的長(zhǎng)度。二、知識(shí)準(zhǔn)備:1、文本控件RichTextBox控件又叫有格式的文本控件,主要用于顯示、輸入和操作帶格式的文本。RichTextBox控件擁有TextBox控件的所有功能,還增加了顯示字體、顏色和連接等功能。(3)RichTextBox控件1)在RichTextBox控件中顯示滾動(dòng)條當(dāng)RichTextBox控件的Multiline屬性為“true”時(shí),表明當(dāng)文本內(nèi)容很多時(shí),可以顯示滾動(dòng)條。二、知識(shí)準(zhǔn)備:1、文本控件(3)RichTextBox控件1)在RichTextBox控件中顯示滾動(dòng)條RichTextBox控件的ScrollBars屬性值及意義屬性值意義BothScrollBars屬性的默認(rèn)值。當(dāng)文本內(nèi)容超過控件的長(zhǎng)度或?qū)挾葧r(shí),根據(jù)情況顯示水平或垂直滾動(dòng)條,也可以同時(shí)顯示。None
不顯示任何滾動(dòng)條。Horizontal
當(dāng)文本內(nèi)容超過控件的寬度時(shí)顯示水平滾動(dòng)條。要想顯示水平滾動(dòng)條,應(yīng)將WordWrap屬性設(shè)定值為false,后面同理。ForcedHorizontal
始終顯示水平滾動(dòng)條,當(dāng)文本長(zhǎng)度沒有超過控件長(zhǎng)度時(shí),滾動(dòng)條為灰色。Vertical
當(dāng)文本內(nèi)容超過控件的高度時(shí)顯示垂直滾動(dòng)條。ForcedVertical
始終顯示垂直滾動(dòng)條,當(dāng)文本長(zhǎng)度沒有超過控件高度時(shí),滾動(dòng)條為灰色。ForcedBoth
始終顯示水平和垂直滾動(dòng)條。WordWrap指示多行文本框在必要時(shí)是否換行到下一行開始,如果值為true,則不會(huì)顯示水平滾動(dòng)條。二、知識(shí)準(zhǔn)備:1、文本控件(3)RichTextBox控件2)在RichTextBox控件中設(shè)置文本屬性在RichTextBox控件中可以設(shè)置顯示文本的字體、大小等屬性。
例如:richTextBox1.SelectionFont
=newFont("楷體",12,FontStyle.Bold);
richTextBox1.SelectionColor=System.Drawing.Color.Red;表明設(shè)置顯示的文本格式為楷體,12號(hào)大小,加粗,顏色為紅色。顏色為紅色加粗12號(hào)字體二、知識(shí)準(zhǔn)備:1、文本控件(3)RichTextBox控件3)在RichTextBox控件中顯示為超鏈接樣式richTextBox1.Text="歡迎光臨學(xué)校主頁(yè):";顯示web連接彩色帶下劃線形式。4)在在RichTextBox控件中設(shè)置段落格式richTextBox1.SelectionBullet=true;設(shè)置控件中的內(nèi)容以項(xiàng)目符號(hào)列表的格式排列。二、知識(shí)準(zhǔn)備:1、文本控件(4)Button控件Button控件也叫做按鈕控件,用戶通常可以通過單擊按鈕來執(zhí)行某些操作。Button控件最常用的屬性是Text屬性。例如:btn_regist.Text=”注冊(cè)”。Button控件的常見設(shè)置如下:二、知識(shí)準(zhǔn)備:1、文本控件(4)Button控件1)設(shè)置按鈕為窗體的“接受”按鈕如果希望直接按下【Enter】鍵來觸發(fā)按鈕的Click事件,需要設(shè)置該按鈕為“接受”按鈕,需要在窗體加載時(shí)(Load事件)進(jìn)行如下設(shè)置:this.AcceptButton=btn_regist;按鈕名稱2)設(shè)置按鈕為窗體的“取消”按鈕取消按鈕相當(dāng)與是當(dāng)用戶按下【ESC】鍵后觸發(fā)的按鈕,需要在窗體加載時(shí)(Load事件)進(jìn)行如下設(shè)置:this.CancelButton=btn_cancle;按鈕名稱二、知識(shí)準(zhǔn)備:2、選擇類控件(1)RadioButton控件1)判斷RadioButton控件是否被選中RadioButton控件又稱為單選按鈕控件,主要為提供兩個(gè)或多個(gè)互相排斥的選項(xiàng)集,例如性別的選擇。RadioButton控件的常見用途:當(dāng)RadioButton控件的Checked屬性為true時(shí)表明控件被選中。2)選中狀態(tài)更改當(dāng)RadioButton控件選中狀態(tài)發(fā)生更改時(shí),引發(fā)控件的CheckedChanged事件。二、知識(shí)準(zhǔn)備:2、選擇類控件(2)CheckBox控件1)判斷CheckBox控件是否被選中CheckBox控件又稱為復(fù)選框控件,提供有多個(gè)選項(xiàng)的選擇,例如興趣愛好。CheckBox控件的常見用途:當(dāng)CheckBox控件的CheckState的屬性為Checked時(shí)表明控件被選中,為unChecked時(shí)表明控件未被選中。2)選中狀態(tài)更改當(dāng)CheckBox控件選中狀態(tài)發(fā)生更改時(shí),引發(fā)控件的CheckStateChanged事件。二、知識(shí)準(zhǔn)備:2、選擇類控件(3)NumericUpDown控件NumericUpDown控件又叫做數(shù)值選擇控件,是顯示和輸入數(shù)值的控件。該控件有一個(gè)上下箭頭,可以通過單擊上下箭頭來對(duì)數(shù)值進(jìn)行增加和減少,也可以直接輸入。NumericUpDown控件屬性屬性設(shè)置方式意義Vaule(1)單擊NumericUpDown控件,打開【屬性】窗口,設(shè)置“Vaule”屬性。(2)通過代碼獲得:NumericUpDown1.Vaule;設(shè)置NumericUpDown控件顯示的數(shù)值。DecimalPlaces(1)單擊NumericUpDown控件,打開【屬性】窗口,修改“DecimalPlaces”屬性。(2)通過代碼修改:NumericUpDown1.DecimalPlaces=3;表示控件中數(shù)值顯示小數(shù)點(diǎn)后3位。設(shè)置NumericUpDown控件的數(shù)值顯示方式。Minimum(1)單擊NumericUpDown控件,打開【屬性】窗口,修改“Minimum”屬性。(2)通過代碼修改:NumericUpDown1.Minimum=10;設(shè)置NumericUpDown控件顯示的最小數(shù)值。Maximum(1)單擊NumericUpDown控件,打開【屬性】窗口,修改“Maximum”屬性。(2)通過代碼修改:NumericUpDown1.Maximum=100;設(shè)置NumericUpDown控件顯示的最大數(shù)值。二、知識(shí)準(zhǔn)備:2、選擇類控件(4)ListBox控件ListBox控件又稱列表框控件,它顯示一個(gè)項(xiàng)目列表供用戶選擇。在列表框中,用戶一次可以選擇一項(xiàng),也可以選擇多項(xiàng)。ListBox控件常用屬性屬性設(shè)置方式意義ItemscbCitys.Items.Add("成都市");表明為列表框添加“成都市”選項(xiàng)。cbCitys.Items.E=Remove("成都市");表明從列表框移除“成都市”選項(xiàng)。用于存放列表框中的列表項(xiàng),是一個(gè)集合。通過該屬性,可以添加、移除獲得列表項(xiàng)的數(shù)目。MultiColumncbCitys.MultiColumn=true;用來獲取或設(shè)置一個(gè)值,該值指示ListBox是否支持多列。值為true時(shí)表示支持多列,值為false時(shí)不支持多列。SelectedIndexcbCitys.SelectedIndex;用于返回選定項(xiàng)的索引。用來獲取或設(shè)置ListBox控件中當(dāng)前選定項(xiàng)的從0開始的索引。如果未選定任何項(xiàng),則返回值為1。SelectedItemprovince=cbCitys.SelectedItem.ToString();獲取或設(shè)置ListBox中的當(dāng)前選定項(xiàng)。SelectedItemscbCitys.SelectedItems.Count;返回被選定項(xiàng)的數(shù)目。
獲取ListBox控件中選定項(xiàng)的集合,通常在ListBox控件的SelectionMode屬性值設(shè)置為SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重選擇ListBox)時(shí)使用。ItemsCountcbCitys.ItemsCount;該屬性用來返回列表項(xiàng)的數(shù)目。二、知識(shí)準(zhǔn)備:2、選擇類控件(5)ComboBox控件ComboBox控件又稱下拉組合框控件,結(jié)合了TextBox控件和ListBox控件的功能,用于在下拉了組合框中顯示數(shù)據(jù)。獲取ComboBox控件中選中的數(shù)據(jù),可以取ComboBox控件的SelectedItem屬性獲得。其大多數(shù)屬性跟TextBox控件和ListBox控件的屬性一致。二、知識(shí)準(zhǔn)備:3、分組類控件(1)Panel控件Panel控件又稱為容器控件,主要用于為其他控件提供可識(shí)別分組,可以有滾動(dòng)條。Panel控件最常用的方法就是show方法,show方法可以顯示控件。(2)GroupBox控件GroupBox控件又叫分組框控件,主要功能是按照分組來細(xì)分窗體的功能。例如個(gè)人基本信息、愛好分組。GroupBox控件總是顯示邊框,也可以顯示標(biāo)題,但是沒有滾動(dòng)條。二、知識(shí)準(zhǔn)備:4、PictureBox控件PictureBox控件又稱為圖片控件。PictureBox控件常用屬性屬性設(shè)置方式意義Image(1)單擊PictureBox控件,打開【屬性】窗口,修改“Image”屬性。用于指定圖片框顯示的圖像。ImageLocation(1)單擊PictureBox控件,打開【屬性】窗口,修改“ImageLocation”屬性。(2)通過代碼修改:stringphotopath=imgPhoto.ImageLocation;;表示獲取圖片的路徑。用于指定圖片框顯示的圖像的文件路徑??稍谠O(shè)計(jì)或運(yùn)行時(shí)設(shè)置SizeMode(1)單擊PictureBox控件,打開【屬性】窗口,修改“SizeMode”屬性。(2)通過代碼修改imgPhoto.SizeMode=StretchImage;用于指定圖像的顯示方式。可以指定的各種大小模式包括AutoSize、CenterImage、Normal和StretchImage。默認(rèn)值為Normal三、任務(wù)分析:因?yàn)閱螕簟緸g覽】按鈕時(shí),要彈出對(duì)話框選擇頭像圖片,所以還應(yīng)該添加一個(gè)OpenFileDialog控件。1、分析用戶注冊(cè)界面的控件構(gòu)成,如下圖所示:三、任務(wù)分析:2、窗體上主要控件的屬性及功能如表所示:控件屬性功能說明表對(duì)象屬性設(shè)置功能TextBox1Name:tb_name輸入用戶昵稱文本框RadioButton1Name:rb_m性別男單選按鈕控件RadioButton2Name:rb_f性別男女選按鈕控件ComboBox1Name:cbProvince顯示省份ListBox1Name::cbCitys在選中省份時(shí)顯示相應(yīng)的區(qū)縣NumericUpDowm1Minium:10Maximum:100設(shè)置年齡最小值為10,最大值為100PictrueBox1Name::imgPhotoSizeMode:StretchImage顯示選擇的頭像圖片,設(shè)置圖片可伸展四、任務(wù)實(shí)施:1、打開任務(wù)一中建立的窗體應(yīng)用程序,添加一個(gè)名為regist的新窗體。2、構(gòu)建如右圖所示的窗體界面。首先應(yīng)該添加一個(gè)GroupBox控件,設(shè)置TextBox屬性為“個(gè)人基本信息”,其余所有的控件添加在GroupBox控件中。四、任務(wù)實(shí)施:3、雙擊【瀏覽】按鈕,添加Click事件處理程序如下:
privatevoidbutton1_Click(objectsender,EventArgse){//實(shí)例化對(duì)話框控件OpenFileDialogdlg=newOpenFileDialog();//設(shè)置對(duì)話框標(biāo)題dlg.Title="選擇相片文件";四、任務(wù)實(shí)施:3、雙擊【瀏覽】按鈕,添加Click事件處理程序如下:
//如果單擊對(duì)話框的“確定”按鈕if(dlg.ShowDialog()==DialogResult.OK){//設(shè)置PictrueBox的ImageLocation屬性this.imgPhoto.ImageLocation=dlg.FileName;}}單擊“確定”顯示圖片的絕對(duì)路徑對(duì)話框中選中圖片的路徑四、任務(wù)實(shí)施:4、為名為cbProvince的ComboBox控件添加SelectedValueChanged事件處理程序,因?yàn)槭》莺芏?,下面以“北京”省為例說明。//如果選擇了“北京”if(this.cbProvince.SelectedIndex==0){
cbCitys.Items.Clear();
cbCitys.Items.Add("海淀區(qū)");
cbCitys.Items.Add("豐臺(tái)區(qū)");
cbCitys.Items.Add("房山區(qū)");
cbCitys.Items.Add("懷柔區(qū)");
cbCitys.Items.Add("西城區(qū)");
cbCitys.SelectedIndex=0;
}“北京”是第1個(gè)選項(xiàng),所以索引為0清空下拉組合控件里的所有選項(xiàng)為下拉組合控件添加新選項(xiàng)默認(rèn)被選中的是第1項(xiàng)(索引為0)四、任務(wù)實(shí)施:5、添加一個(gè)名為msg的新窗體,界面布局如下圖所示,用于顯示用戶注冊(cè)信息:RichTextBox控件四、任務(wù)實(shí)施:6、雙擊【注冊(cè)】按鈕,添加【注冊(cè)】按鈕的Click事件處理程序:privatevoidbtn_regist_Click(objectsender,EventArgse){//接受昵稱
stringname=tb_name.Text;//接受性別
stringsex=rb_f.Checked?rb_f.Text:rb_m.Text;//接受年齡
stringage=numericUpDown1.Value.ToString();//接受籍貫
stringprovince=cbProvince.SelectedItem.ToString();province+=cbCitys.SelectedItem.ToString();四、任務(wù)實(shí)施:6、單擊【注冊(cè)】按鈕,添加【注冊(cè)】按鈕的Click事件處理程序://接受愛好
stringinteresting="";if(cb_bike.CheckState==CheckState.Checked){interesting="騎車";}if(cb_bike.CheckState==CheckState.Checked){interesting+="、跑步";}
if(cb_bike.CheckState==CheckState.Checked){interesting+="、唱K";}if(cb_bike.CheckState==CheckState.Checked){interesting+="、游泳";}if(cb_bike.CheckState==CheckState.Checked){interesting+="、網(wǎng)球";}四、任務(wù)實(shí)施:6、單擊【注冊(cè)】按鈕,添加【注冊(cè)】按鈕的Click事件處理程序:
//保存?zhèn)€性說明stringdescription=richTextBox1.Text;//保存所有信息stringmsg=name+"\r\n"+age+"\r\n"+sex+"\r\n"+province+"\r\n"+interesting+"\r\n"+description+"\r\n";}四、任務(wù)實(shí)施:7、單擊修改【注冊(cè)】按鈕的Click事件處理程序,實(shí)現(xiàn)窗體之間的數(shù)據(jù)傳遞。通過構(gòu)造函數(shù)從主窗體regist向msg窗體傳值,步驟如下:
//實(shí)例化注冊(cè)信息顯示窗體,利用構(gòu)造函數(shù)參數(shù)傳遞數(shù)據(jù)
msgmessage=newmsg(msg);message.Show();message.Owner=this;(1)在步驟6中的【注冊(cè)】按鈕的Click事件處理程序后加入如下代碼:Msg是“已注冊(cè)用戶信息”窗體名稱顯示窗體publicpartialclassmsg:Form{//通過構(gòu)造函數(shù)在窗體間傳遞信息publicmsg(stringtransfmsg){InitializeComponent();this.textBox1.Text=transfmsg;
}}(2)在窗體msg中,修改構(gòu)造函數(shù)如下:四、任務(wù)實(shí)施:8、單擊下圖中的【注冊(cè)用戶】按鈕,為其添加Click事件處理程序,設(shè)置顯示【用戶注冊(cè)】窗體:privatevoidlabel3_Click(objectsender,EventArgse){registrg=newregist();rg.Show();}顯示“用戶注冊(cè)”窗體四、任務(wù)實(shí)施:9、單擊如左圖中登錄窗體上的【注冊(cè)用戶】按鈕,彈出【用戶注冊(cè)】窗體,輸入完用戶信息后,單擊【注冊(cè)】按鈕,彈出【已注冊(cè)用戶信息】窗體,如右所示。五、任務(wù)小結(jié):1、窗體之間的數(shù)據(jù)傳遞,可以通過構(gòu)造函數(shù)從主窗體傳遞給其他窗體。2、可以通過ListBox控件的Items屬性里的Add方法和Remvoe方法為L(zhǎng)istBox控件添加或刪除項(xiàng)目。第8章窗體和常用控件
——任務(wù)三編輯QQ主窗體
一、任務(wù)描述:修改任務(wù)一中的“QQText”窗體,為其添加TabControl控件和StatusStrip控件,如左圖所示,單擊【加載】按鈕后,顯示加載進(jìn)度條,如下圖所示:?jiǎn)螕簟凹虞d”二、任務(wù)準(zhǔn)備:1、TabControl控件TabControl控件又叫選項(xiàng)卡控件,它包含多個(gè)選項(xiàng)卡,可以把窗體分成多頁(yè),使窗體的功能劃分成多個(gè)部分,例如我們經(jīng)常用的QQ面板上就用到TabControl控件控件,如圖所示。TabControl控件包含TabPage選項(xiàng)卡頁(yè)。TabControl控件的TabPages屬性表示所有TabPage的集合。下面介紹TabControl控件的的常用設(shè)置。二、任務(wù)準(zhǔn)備:1、TabControl控件1)單擊TabControl控件右邊的標(biāo)簽下的【AddTab】和【RemoveTab】可以直接添加或刪除一個(gè)TabPage。(1)添加和移除選項(xiàng)卡添加和移除選項(xiàng)卡有以下兩種方式:二、任務(wù)準(zhǔn)備:1、TabControl控件2)以編程方式添加或刪除一個(gè)TabPage:(1)添加和移除選項(xiàng)卡添加和移除選項(xiàng)卡有以下兩種方式:新增選項(xiàng)卡:stringTitle="新增選項(xiàng)卡";//新增選項(xiàng)卡名稱TabPagemytabpage=newTabPage(Title);//實(shí)例化新增選項(xiàng)卡tabControl1.TabPages.Add(mytabpage);//添加新增選項(xiàng)卡到控件中刪除選項(xiàng)卡:tabControl1.TabPages.Remove(tabControl1.SelectedTab);被選中選項(xiàng)卡二、任務(wù)準(zhǔn)備:2、StatusStrip控件StatusStrip控件又稱為狀態(tài)欄控件,一般處于窗體的最底部,用于顯示窗體上的對(duì)象的相關(guān)信息等。StatusStrip控件包含ToolStrpStatusLabel、ToolStrpDropDownButton、ToolStripProgressBar控件等,如圖所示:二、任務(wù)準(zhǔn)備:3、MenuStrip控件MenuStrip控件又稱為菜單控件,支持多文檔界面、菜單合并、工具提示和溢出。從工具箱中拖曳MenuStrip控件到窗體中,在“TypwHere”中直接輸入“文件(&F)”,則顯示如圖所示“文件(F)”,這里的“&”符號(hào)被識(shí)別為確認(rèn)快捷鍵的符號(hào)。二、任務(wù)準(zhǔn)備:3、MenuStrip控件創(chuàng)建完整菜單如左圖所示:?jiǎn)螕簟疚募?,在其下方的子菜單中輸入如右圖的子菜單,例如“新建(N)”則輸入新建(&N)。運(yùn)行窗體應(yīng)用程序,當(dāng)按下組合鍵“ALT+F”時(shí)打開【文件】的子菜單。在使用菜單中的快捷鍵時(shí),首先要選擇主菜單,在彈出下拉列表后,才能通過快捷鍵訪問子菜單。二、任務(wù)準(zhǔn)備:4、ToolStrip控件ToolStrip控件又稱為工具欄控件。例:在“我的電腦”窗體中,添加一個(gè)ToolStrip控件顯示當(dāng)前系統(tǒng)的時(shí)間。1)從工具箱中拖曳ToolStrip控件到窗體中,如圖設(shè)置ToolStrip控件在窗體中的位置。二、任務(wù)準(zhǔn)備:4、ToolStrip控件2)單擊ToolStrip控件右邊的下拉箭頭,可以看到如圖所示的8種不同類型:Button,Lable,SplitButton,DropDownButton:,Separator,ComboBox,TextBox和ProgressBar。二、任務(wù)準(zhǔn)備:4、ToolStrip控件單擊ToolStrip控件右邊下拉菜單中的【EditItems】,打開如圖的對(duì)話框:二、任務(wù)準(zhǔn)備:4、ToolStrip控件選擇【Button】,單擊【Add】按鈕,添加3個(gè)toolStripButton。單擊右邊屬性窗口中的【Image】后的按鈕,打開如圖所示選擇圖像對(duì)話框:二、任務(wù)準(zhǔn)備:4、ToolStrip控件單擊【Import】按鈕,選擇作為toolStripButton的圖片后,單擊【OK】即可。為上面的3個(gè)toolStripButton添加圖片后如圖所示:二、任務(wù)準(zhǔn)備:5、ImageList控件publicvoidAdd(Imagevalue)ImageList控件又叫存儲(chǔ)圖像控件,主要用于存儲(chǔ)圖像資源。ImageList控件的主要屬性是Images,它包含關(guān)聯(lián)控件將要使用的圖片,每個(gè)圖片可以通過索引值或鍵值來訪問,imageList1.Images[index]。1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 格林童話讀后感(15篇)
- 大學(xué)認(rèn)識(shí)實(shí)習(xí)報(bào)告范文匯編10篇
- 六一兒童節(jié)主題活動(dòng)總結(jié)10篇
- 個(gè)人試用期轉(zhuǎn)正工作總結(jié)(匯編15篇)
- 幼兒園學(xué)前班新學(xué)期工作計(jì)劃
- 教師的感恩演講稿四篇
- 軍訓(xùn)個(gè)人心得體會(huì)(集錦15篇)
- 山西財(cái)經(jīng)大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)814數(shù)據(jù)結(jié)構(gòu)考研題庫(kù)
- 九年級(jí)下冊(cè)數(shù)學(xué)教學(xué)計(jì)劃錦集(17篇)
- 健康檢查服務(wù)合同(2篇)
- 《東南亞經(jīng)濟(jì)與貿(mào)易》習(xí)題集、案例、答案、參考書目
- 燒烤店裝修合同范文模板
- 2024年中國(guó)櫻桃番茄種市場(chǎng)調(diào)查研究報(bào)告
- 數(shù)據(jù)分析基礎(chǔ)與應(yīng)用指南
- 人教版(PEP)小學(xué)六年級(jí)英語(yǔ)上冊(cè)全冊(cè)教案
- 廣東省廣州市海珠區(qū)2023-2024學(xué)年六年級(jí)上學(xué)期月考英語(yǔ)試卷
- 消防水域救援個(gè)人防護(hù)裝備試驗(yàn) 大綱
- 機(jī)電樣板施工主要技術(shù)方案
- 涉稅風(fēng)險(xiǎn)管理方案
- 青島市2022-2023學(xué)年七年級(jí)上學(xué)期期末道德與法治試題
- 高空作業(yè)安全免責(zé)協(xié)議書范本
評(píng)論
0/150
提交評(píng)論