第六章列表控件_第1頁
第六章列表控件_第2頁
第六章列表控件_第3頁
第六章列表控件_第4頁
第六章列表控件_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第六章列表控件第1頁,共36頁,2023年,2月20日,星期三6.1面板組件(Panel) 面板組件在標(biāo)準(zhǔn)(Standard)頁標(biāo)簽上。該組件用來在窗體上放置一面板,在面板上可以放置其它的組件。 6.1.1面板組件的屬性 1.BevelInner屬性 BevelInner屬性確定面板組件的內(nèi)部斜面。第2頁,共36頁,2023年,2月20日,星期三2.BevelOuter屬性BevelOuter屬性確定面板組件的外部斜面。3.BevelWidth屬性 BevelWidth屬性確定面板的內(nèi)部斜面和外部斜面的寬度(單為像素)。BevelInner屬性確定內(nèi)部斜面如何出現(xiàn);BevelOuter屬性確定外部斜面如何出現(xiàn)。使用這三個屬性就可以改變面板的外觀。第3頁,共36頁,2023年,2月20日,星期三 4.BorderWidth屬性 BorderWidth屬性用來確定面板邊界的寬度(單位象素)。默認(rèn)值為0,即沒有邊界。 5.BorderStyle屬性 BorderStyle屬性確定面板邊界的類型:bsNone,表示無邊界;bsSingle表示單線邊界。 6.Ctrl3D屬性 Ctrl3D屬性確定面板是否為立體的。第4頁,共36頁,2023年,2月20日,星期三 7.Cursor屬性 Cursor屬性用來確定當(dāng)鼠標(biāo)指針移動到面板上時,鼠標(biāo)指針的形狀。 6.1.2面板組件的事件 與面板組件有關(guān)的主要事件有單擊事件(OnClick)與雙擊事件(OnDblClick)、OnEnter、OnExit、OnStartDrag、OnEndDrag等事件第5頁,共36頁,2023年,2月20日,星期三6.2快捷按鈕組件(SpeedButton) 快捷按鈕組件在附加頁標(biāo)簽上。 6.2.1快捷按鈕組件的屬性 1.AllowAllUp屬性 該屬性為布爾型,它確定該快捷按鈕所在組中的所有快捷按鈕是否可同時不選定(按鈕在彈起的狀態(tài))。因此,該屬性只能用在成組的快捷按鈕上(即每一快捷按鈕的GroupIndex屬性非零),若GroupIndex為零,則該屬性無效。第6頁,共36頁,2023年,2月20日,星期三 默認(rèn)值為False,就是成組的快捷按鈕中有一個總是選定的,使用Down屬性確定預(yù)選定的快捷按鈕;若該屬性為的值為True,則成組的快捷按鈕沒有選定的。 改變成組中一個快捷按鈕的AllowAllUp屬性值,將改變該組中的所有AllowAllUp屬性值。 也可對成組的單個位圖按鈕使用AllowAllUp屬性(GroupIndex的值大于零),從而該按鈕的選定與不選定由用戶單擊來確定,就像復(fù)選框的工作方式一樣。要使得單個的快捷按鈕像這種方式工作,設(shè)置其GroupIndex的值大于零(但與任何其它快捷按鈕的GroupIndex值不同),并且設(shè)置AllowAllUp屬性的值為True。第7頁,共36頁,2023年,2月20日,星期三 2.Down屬性 該屬性為布爾型,它確定該按鈕是處于選定還是不選定狀態(tài)。默認(rèn)值為False,即處于不選定狀態(tài)。 雖然對一組快捷按鈕的AllowAllUp屬性都可以設(shè)置為False,但必須對一個快捷按鈕設(shè)置Down屬性。也可在運行時設(shè)置Down的屬性,無須用戶單擊選定快捷按鈕。第8頁,共36頁,2023年,2月20日,星期三 3.Glyph屬性 Glyph指定出現(xiàn)在快捷按鈕上的位圖(表示該按鈕的功能)。使用對象編輯器上該按鈕后的按鈕可選擇位圖文件(后綴為.BMP),或在運行時指定位圖文件。 在快捷按鈕上的單個位圖中可以指定多達(dá)4個的圖像。 對只有一個圖像的情形,Delphi對不同的狀態(tài)使用第一個圖像,只是暗淡不同而已。對在位圖中有多個圖像的情形時,必須使用NumGlyphs屬性指定圖像號。所有的圖像必須大小相同,水平并排排列。 單擊對象編輯器的該屬性旁邊的值欄,就會打開一個圖形編輯器。在圖形編輯器中選擇Load按鈕來選擇要使用圖像的.BMP文件。第9頁,共36頁,2023年,2月20日,星期三 4.GroupIndex屬性 該屬性為整型變量,它確定哪一快捷按鈕加入到組中。 默認(rèn)值為0,表示該快捷按鈕不屬于組。當(dāng)用戶單擊該組件時,它處于凹下狀態(tài),而當(dāng)用戶釋放鼠標(biāo)時,它就恢復(fù)正常的彈起狀態(tài)。 具有相同GroupIndex屬性(非0)的快捷按鈕,就在相同的組中。當(dāng)用戶單擊組中的一個快捷按鈕時,它就處于凹下狀態(tài),直到用戶再次單擊該組中的另一快捷按鈕為止。以這種方式使用的按鈕給用戶以互斥的選擇。第10頁,共36頁,2023年,2月20日,星期三 5.Layout屬性 Layout屬性確定出現(xiàn)在位圖按鈕或加速按鈕上圖像的位置。 6.Margin屬性 該屬性為整型變量,它確定在圖形的邊界(由Glyph屬性指定的)和按鈕的邊界間的像素數(shù)。 邊沿分界是由圖像和文本(由Layout屬性指定)的分布確定的。如Layout的值為blGlyphLeft,在圖像的左邊和按鈕的左邊則出現(xiàn)邊沿。若Margin為3,則邊沿為3個像素,若Margin為0,則沒有邊沿。 默認(rèn)值為-1,表示圖像和文本(由Caption屬性指定)居中。第11頁,共36頁,2023年,2月20日,星期三 7.NumGlyphs屬性 NumGlyphs指定用于加速按鈕上的圖像(由Glyph屬性指定)數(shù)。 若在一個位圖中有多個圖像,則必須使用該屬性指定位圖中的圖像數(shù)。所有的圖像必須具有相同的大小,并排排列。默認(rèn)值為1,有效值為1到4。也就是說最多4個圖像。 在按鈕上顯示哪一個圖像是由按鈕的狀態(tài)確定的,如表6-3所示。 對于只有一個圖像的情形,Delphi對不同的狀態(tài)使用相同的圖像,只是暗淡不同而已。第12頁,共36頁,2023年,2月20日,星期三 8.Spacing屬性 該屬性為整型變量,它確定出現(xiàn)在加速按鈕圖像的位置。即在圖像(由Glyph屬性指定)和文本(由Caption屬性指定)之間的像素數(shù)(正數(shù)時)。默認(rèn)值為4。若為0,則其間沒有空隙;若為-1,則文本出現(xiàn)在圖像與按鈕邊界中央。 6.2.2快捷按鈕組件的事件 與快捷按鈕組件有關(guān)的主要事件有單擊事件(OnClick)與雙擊事件(OnDblClick)。第13頁,共36頁,2023年,2月20日,星期三6.3制作工具欄 在窗體上建立工具欄是很方便的。首先,在窗體中加入面板,并且將其Align屬性設(shè)置為alTop,這時面板會保持它原來的高度,但可調(diào)整它的寬度至充滿整個窗體,甚至當(dāng)改變窗體的大小時,面板也可自行調(diào)整它的寬度。然后在其中加入快捷按鈕或其它的組件。第14頁,共36頁,2023年,2月20日,星期三 可以在窗體中添加許多的工具欄。這時,它們會根據(jù)加入的順序垂直排列在窗體的上端(最后加入的工具欄在最上端)。 快捷按鈕有三種可能的操作模式。它們可以像正常的按鈕一樣、單擊時切換狀態(tài)或像一組單選鈕一樣。 對快捷按鈕使用Glyph屬性來指定圖樣??梢酝ㄟ^快捷按鈕的表現(xiàn)來給使用者了解按鈕現(xiàn)在的狀態(tài)和功能,這包括利用Down屬性表示按鈕是否被按下,使用Enabled屬性表示按鈕是否可用。第15頁,共36頁,2023年,2月20日,星期三 為了表示一組互斥的選擇,可通過GroupIndex屬性對快捷按鈕進(jìn)行分組,將相關(guān)的快捷按鈕放在同一組中,因而當(dāng)單擊該組中的一個按鈕時,其它的按鈕都會凸起來。 在對快捷按鈕分組后,要定義一個切換鍵:單擊該按鈕,可使該組中沒有按鈕被選定。定義切換鍵使用快捷按鈕的AllowAllUp屬性。 制作完整的工具欄,請參考6.4中的例子。第16頁,共36頁,2023年,2月20日,星期三6.4制作狀態(tài)欄 制作狀態(tài)欄,可在窗體中加入一個面板組件,并且將它的Align屬性設(shè)置為alBottom,并清除Caption屬性的值。 對狀態(tài)欄可以將它分成幾個獨立的狀態(tài)框(加入新的面板組件)或使用BevelInner及BorderWidth屬性來產(chǎn)生立體的效果。 更新狀態(tài)欄的信息可以反應(yīng)應(yīng)用程序的當(dāng)前狀態(tài)。狀態(tài)欄顯示的文字就是面板組件的Caption屬性值,可以在事件處理程序中加入改變Caption屬性值的程序代碼來更新狀態(tài)欄,以反應(yīng)當(dāng)前的程序狀態(tài)。第17頁,共36頁,2023年,2月20日,星期三6.5使用工具欄組件設(shè)計工具欄 6.5.1工具欄組件 工具欄組件在Win32頁標(biāo)簽上,可用來管理和安排可視的組件。使用工具欄組件具有下列優(yōu)點: 在工具欄組件上按鈕的大小和間距自動保持一致;其它的控件也自動保持它們的相對位置和高度;若在一行中按鈕顯示不下,可以自動折行顯示。第18頁,共36頁,2023年,2月20日,星期三 1.工具欄組件的屬性 ⑴Align屬性 Align屬性用來確定該組件與窗體的對齊方式,也就是在窗體中的位置。 ⑵Autosize屬性 該屬性為布爾型,當(dāng)為True時,工具欄的大小隨著內(nèi)容的變化而變化。 ⑶ButtonHeight屬性 該屬性為整型,用來確定工具欄上的按鈕和其它組件的高度,單位為像素。第19頁,共36頁,2023年,2月20日,星期三 ⑷ButtonWidth屬性 該屬性為整型,用來確定工具欄上的按鈕和其它組件的寬度,單位為像素。 ⑸Flat屬性 該屬性為布爾型,當(dāng)為True時,工具欄上按鈕的邊框由普通邊框變?yōu)閺棾鍪竭吙?。平時按鈕和工具欄融為一體,當(dāng)鼠標(biāo)指針移動到按鈕上時,按鈕自動從工具欄上浮現(xiàn)出來。第20頁,共36頁,2023年,2月20日,星期三 ⑹Images屬性 列出工具欄按鈕上出現(xiàn)的圖標(biāo)。每一按鈕的ImageIndex屬性確定顯示指定的圖標(biāo)。若不指定圖標(biāo),則按鈕上不顯示圖標(biāo)。 ⑺List屬性 該屬性為布爾型,當(dāng)為True時,圖標(biāo)占據(jù)按鈕的左半部,標(biāo)題在右半部;否則圖標(biāo)占據(jù)按鈕的上半部,標(biāo)題在下半部。 ⑻ShowCaption屬性 該屬性為布爾型,當(dāng)為它True時,工具欄上的所有按鈕顯示文本(即Caption屬性的內(nèi)容,這時可能改變按鈕的大小),否則不顯示。第21頁,共36頁,2023年,2月20日,星期三 2.工具欄組件的事件 與工具欄組件有關(guān)的主要事件有單擊事件(OnClick)與雙擊事件(OnDblClick)。 6.5.2工具欄按鈕組件 工具欄按鈕(ToolButton)組件是一種特殊的按鈕組件,它只配合工具欄組件使用,不能放置在其他窗口組件上。第22頁,共36頁,2023年,2月20日,星期三 要在工具欄組件上添加工具按鈕,右單擊工具欄組件,在彈出的快捷菜單中選擇“NewButton”菜單命令即可生成一個空白的工具欄按鈕,生成的工具欄按鈕依次在工具欄組件上排列。 工具欄組件自己生成工具欄按鈕,因此隨著工具欄組件的移動或隱藏,工具欄按鈕也進(jìn)行相應(yīng)的移動或隱藏。第23頁,共36頁,2023年,2月20日,星期三 1.工具欄按鈕的屬性 ⑴Grouped屬性 該屬性為布爾型,當(dāng)為它True并且Style屬性的值為tbsCheck時,則同一組中的按鈕一次只能選定一個。 對按鈕分組右單擊工具欄組件,在彈出的快捷菜單中選擇“NewSeparator”菜單命令即可。 ⑵ImageIndex屬性 該屬性為整型,用來確定出現(xiàn)在工具欄按鈕上的圖標(biāo)。若其值為0,則工具欄按鈕將顯示工具欄組件Images屬性所確定的圖標(biāo)列表中的第1個圖標(biāo)。第24頁,共36頁,2023年,2月20日,星期三 ⑶Down屬性 該屬性為布爾型,當(dāng)為它True時,工具欄按鈕被選定,這時按鈕為凹下的。當(dāng)按鈕不選定時,按鈕為凸起的。 ⑷Style屬性 確定工具按鈕的顯示風(fēng)格。 2.工具欄組件的事件 與工具欄組件有關(guān)的主要事件有單擊事件(OnClick)。第25頁,共36頁,2023年,2月20日,星期三6.5.3設(shè)計工具欄1.工具欄設(shè)計的操作過程設(shè)計工具欄采用下列的操作過程:第1步:設(shè)置圖表列表。 在Win32頁標(biāo)簽中選擇圖表列表組件,將其放到窗體上。雙擊窗體上的圖標(biāo)列表組件,打開圖標(biāo)列表編輯框(如圖6-3所示)。第26頁,共36頁,2023年,2月20日,星期三第27頁,共36頁,2023年,2月20日,星期三在該對話框中添加工具欄按鈕要使用的圖標(biāo)。第2步:設(shè)置工具欄。在窗體上添加工具欄按鈕組件,并設(shè)置其屬性。第3步:設(shè)置工具欄按鈕。在工具欄組件上添加工具欄按鈕,并設(shè)置其屬性。第4步:編寫按鈕事件的處理程序。第5步:運行程序,查看設(shè)置后的效果。第28頁,共36頁,2023年,2月20日,星期三6.6使用狀態(tài)欄組件設(shè)計狀態(tài)欄 狀態(tài)欄組件位于Win32頁標(biāo)簽中。 6.6.1狀態(tài)欄組件的屬性 1.Align屬性 Align屬性用來確定該組件與窗體的對齊方式,也就是在窗體中的位置。其取值如表6-5所示。默認(rèn)值為alBottom,即狀態(tài)欄位于主窗口的底部。第29頁,共36頁,2023年,2月20日,星期三 2.SimplePanel屬性 該屬性為布爾型,當(dāng)為True時,狀態(tài)上只有單個面板,面板上顯示的內(nèi)容為SimpleText屬性的值,否則狀態(tài)欄上有多個面板。 3.SimpleText屬性 該屬性為字符串型。若狀態(tài)欄上只有單個面板,該屬性的值就是狀態(tài)欄上顯示的內(nèi)容。 4.SizeGrid屬性 該屬性為布爾型,當(dāng)為True時,可在運行時改變狀態(tài)欄的大小。第30頁,共36頁,2023年,2月20日,星期三 5.Canvas屬性 該屬性為只讀型的,在運行時提供對狀態(tài)欄上繪圖的存取。 6.Panels屬性 該屬性包含了狀態(tài)欄的各個顯示面板,在設(shè)計時可向狀態(tài)欄組件添加、刪除、修改面板。其方法是單擊該屬性旁的“…”按鈕,打開面板編輯器即可。 6.6.2在狀態(tài)欄組件中添加或刪除顯示面板 在狀態(tài)中添加或刪除面板面板采用下面的操作過程: 第1步:單擊狀態(tài)欄組件Panel屬性旁的“…”按鈕,打開面板編輯器,如圖6-5所示。第31頁,共36頁,2023年,2月20日,星期三第32頁,共36頁,2023年,2月20日,星期三 第2步:在面板編輯器窗口中添加、刪除或改變面板的順序。 第

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論