Delphi Form Designer (窗體設計器)之三


防止組件被移動或改變大小

組件可以鎖住使它們不能移動。鎖住組件是有用的,這樣就知道Form Designer已完成工作並且不想為意外地移動控件而擔心。要鎖住窗體的控件,從主菜單中選擇【Edit | Lock Controls】。鎖住的控件是不能被移動和改變大小的。當控件被鎖住時,它們的大小變動手柄是灰色的且帶有黑邊。如下圖Button1,Button2,Button3被鎖定住:

image

要解鎖控件,在選【Edit | Lock Controls】,控件就像以前一樣可以移動了。應用此技術,可以鎖住窗體上所有的組件或一個也不鎖,但不能鎖住已被選擇了的組件。

 

排序、剪切、復制及粘貼組件

有時會把組件放到另一個的上面以產生可視效果。例如把白框放在黑框上面會產生陰影框。顯然不能把陰影放在框上,因此不得不排序控件告訴Delphi,哪些控件放到上面,哪些控件放到下面去。現在做一個簡單的聯系,順便也說明下如何使用Copy與Paste組件。首先啟動空窗體,然后做以下幾步:

1、在組件選項板上點擊Additional標簽,選Shape組件,在窗體上點擊按鈕,設置該Shape,白色正方形出現在窗體上;

2、設置Shape的大小如所期望一樣,如下:

0120

3、確信Shape組件被選擇,從主菜單選【Edit | Copy】;

4、從主菜單選【Edit | Paste】。Shape的復制品被安放在原始Shape的右下方,正是想要的地方,實在方便,如下:

0121

Note

粘貼操作后,剛粘貼的組件會被選擇。

1、 雙擊Object Inspector的Brush屬性,改變其Color屬性為clBlack,新Shape是黑色的,但在原始Shape的上面,我們需要調整一些順序;

0122

2、 點擊右鍵,從快捷菜單選擇【Control | Send to Back】。黑色的Shape移動到了白色Shape的后面,現在有了帶陰影的框。

0123

這個練習舉例說明了Form Designer的兩個特點,顯示了怎樣改變控件的堆放順序如何用Copy與Paste復制組件

原始組件的屬性被正確復制並粘貼在里面,作為粘貼處理部分。每次粘貼組件,都被放在原始組件的右下方。

Note

粘貼時,如果作為容器的組件已被選擇,剪貼板中的組件會粘貼在此容器組件中。例如想從主窗口移動按鈕到面板Panel中,則先選擇按鈕,並選擇快捷菜單【Edit | Cut】從窗體上剪切該按鈕並放置到剪貼板中,然后選擇面板Panel,從快捷菜單中選擇【Edit | Paste】把按鈕粘貼到面板Panel中。

Tip

也可以復制組件,並粘貼在Code Editor中,例如我們復制一個Edit組件並粘貼后,結果如下:

object Edit1: TEdit
  Left = 180
  Top = 110
  Width = 121
  Height = 21
  TabOrder = 0
  Text = 'Edit1'
end

這不是編輯代碼,此技術卻給出了Edit組件在窗體上的大小和位置。當在運行階段而不是設計階段建立組件時,這信息就會有用。把組件可視地放在窗體上,用Copy和Paste獲取其大小及位置信息,然后刪除此組件,於是就可以寫代碼在運行階段正確的建立大小合適位置合適的組件。

 

設置組件大小

對某些組件,把它放到窗體上並接受缺省大小。按鈕是個好例子。標准的按鈕高25像素,寬75像素。如下圖:

0124

對於許多情形,缺省的按鈕大小正是想要的。但對某些組件,缺省大小很少是需要的。例如Memo組件,幾乎總是要設置大小來適合具體的窗體。

1、用拖動設置大小

當選擇控件時,八個黑色大小手柄出現在控件周圍。當把鼠標放在其中任意一個手柄上時,光標變成雙箭頭,被稱作大小設置光標。當看到大小設置光標時,開始拖動來設置控件大小。組件大小如何設置依賴於控制尺寸手柄。

在組件上下邊中央的尺寸手柄設置垂直大小,同樣的左右尺寸手柄設置組件的水平大小。如果抓住組件角上的尺寸手柄,則同時設置組件的橫向與縱向大小。當尺寸手柄是所期望大小時,釋放鼠標按鈕,組件大小重新設置了。如下設置Memo組件的大小的前后兩張圖:

0125

圖1、正在設置大小的Memo組件

0126

圖2、設置好大小后的窗體

Note

大小設置值用於可視化組件。非可視化組件作為圖標出現在窗體上,不能設置大小。尺寸手柄出現在非可視化組件上,可以拖動它,拖動結果卻被忽略。

控件組不能用拖動設置其大小。當選擇多於一個組件時,尺寸手柄為選擇提示符所代替。

 

Tip

要依次設置組中全部組件,改變Object Inspector中Width和Height屬性,或使用Size對話框設置。

 

Tip

要每次一個像素一個像素地設置控件或控件組的大小,須在按住Shift鍵的同時按任意箭頭鍵控制其垂直和水平的大小。只有組件的Width和Height屬性受影響,而Left和Top屬性不變。

2、用大小對話框設置其大小

另一種設置大小的方法是Size對話框,可從快捷菜單中選擇【Position | Size…】或者從主菜單【Edit | Size…】打開Size對話框,如下圖:

0127

要使一組控件有相同的高度或寬度時用Size對話框。例如,窗體上有6個編輯Edit組件,都有不同的寬度。要使窗體顯得更整齊,需要把它們做成相同寬度。首先選擇這6個組件,然后調出Size對話框,在Width欄中選擇“Shrink to smallest”,使所有組件按寬度最短的組件寬度設置,或者選擇“Grow to largest”,使所有組件的寬度按最長寬度的組件設置,或者也可以Width編輯框中輸入精確的寬度,此時保證Height欄中選擇“No change”。點擊OK,組件即有同一寬度。

3、 用Scale對話框設置大小

設置大小的另一個工具是Scale對話框,從主菜單選擇【Edit | Scale…】或者從Form Designer快捷菜單中選擇【Position | Scale…】調出Scale對話框。如下圖:

0128

此對話框能夠指定比例百分比。要做兩倍大小的組件,在Scale編輯框中輸入200;要縮減一半,輸入50即可。Scale對話框快速改變所有窗體組件的大小是非常方便的。

Note

記住,在Object Inspector中改變Left和Top屬性可以移動組件;改變Width和Height屬性可以設置組件的大小。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM