Delphi Form Designer (窗体设计器)之二
選擇組件
1、 選擇單個組件
要選擇單個組件,只要在上面點擊即可。選擇組件時,八個黑色大小標記符出現在組件周圍以提示它被選擇了。如圖所示:
選擇組件時Object Inspector會發生變化,以顯示所選控件的屬性和事件。要取消選擇,點擊窗體背景或者在控件上Shift + Click取消選擇。
Tip
每個組件有相應缺省事件處理程序。當雙擊窗體上組件時,Code Editor顯示該組件的缺省事件處理程序,為輸入代碼做準備。在多數情況下,缺省事件處理程序是OnClick處理程序。雙擊組件時到底發生什么依賴于組件是怎么設計的。
2、 選擇一組組件
也可以選擇多個組件,把它們看作一組,有三種方法實現:
- 用鍵盤和鼠標Shift + Click
- 用鼠標拖動
- 從主菜單上選擇【Edit | Select All】或Ctrl + A,將選擇窗體上所有組件。
3、 使用Shift + Click選擇組件
要用Shift + Click選擇組件,先選擇一個控件,然后按住鍵盤上的Shift鍵,在想要包含到選擇中的任何其他控件上點擊。點擊的每個控件邊界有四個灰色框,提示它是選擇中的一部分了。
繼續按住Shift鍵,再在組件上點擊就從選擇中取消了控件。
舉例子說明,先啟動空窗體:
(1)在窗體上任意安放三個按鈕,它們會自動編號為Button1、Button2和Button3;
(2)點擊Button1,八個黑色小矩形出現在Button1控件的周圍,如下圖
(3)按住鍵盤上的Shift鍵,點擊Button2,增加到選擇中。Button1和Button2的角上都出現灰色框,如下圖:
?
(4)在Button3上Shift+Click,三個按鈕全部選擇中,如下圖:
?
(5)再在Button2上Shift+Click,Button2從選擇中刪除(灰色小框消失),Button1和Button3仍在選擇中,如下圖:
?
(6)在Button1上Shift+Click,Button3是唯一在選擇中的組件,灰色角框變成了八個黑色矩形框,如下圖:
?
(7)在Button1與Button2上Shift+Click,所有三個按鈕又都是選擇中的部分,如下圖:
Note
如果在已被選擇的組件上點擊則什么也不會發生。選擇當前某組選擇中的單個控件,需要先在窗體背景上點擊或按ESC鍵刪除此組選擇。然后在想選擇的單個控件上點擊。
4、 使用拖動選擇多個組件
可拖動圍繞在要選擇的控件邊界矩形來選擇多個控件。邊界矩形(bounding rectangle)邊為螞蟻線,在拖動時可以改變大小。事實上,不必拖動邊界矩形完全圍繞在組件上,為了組件能包含到選擇中,只需要邊界矩形接觸它就可以選中,如下圖所示:
在開始時一定要把鼠標光標放在窗體背景上而不是組件上。按住鼠標左鍵開始拖動,在拖動時會看到邊界矩形。圍繞或者接觸到要選的組件時釋放鼠標左鍵,邊界矩形中任何組件都包含在選擇中。
選擇了一組控件后,可用前面介紹的Shift+Click技術來增加其他控件到選擇中,或從選擇中刪除控件。
5、 選擇多個項:組件中的組件
經常需要把組件放在其他組件中。Panel面板組件經常當做其他組件的容器。要在Panel上選擇一組組件,必須拖動選擇組件的同時按Ctrl鍵。
?
移動組件
移動組件是非常簡單的,要移動單個組件,把鼠標放到組件上拖動。在拖動時表示組件的矩形隨鼠標光標移動。當把矩形放到需要的位置時,釋放鼠標按鍵,組件就移動到哪個位置。
Note
當通過拖動釋放移動控件時,控件Left和Top屬性自動更新。在移動組件時,就會看到鼠標光標下出現工具提示信息。工具提示信息顯示停止拖動時組件的新的Left和Top信息。
在用拖動設置組件大小時,也會有類似的提示信息,顯示新的Height和Width信息。
Note
用拖動釋放移動組件最容易。如果需要更好的控制,可以在Object Inspector中改變組件的Left和Top屬性。也可以使用各種對齊選項。
如果“Snap to grid”選項開著,拖動矩形會跳到最近的坐標網格點上。
Tip
若在拖動時改變了想法,在釋放鼠標按鍵前按鍵盤ESC鍵來取消操作,組件就回到原始位置。
拖動一組控件也一樣,選擇了一組組件后,把鼠標光標放在任何一個控件上開始拖動,對組件的每個控件都將顯示拖動矩形。這使大家能想象到在釋放鼠標按鈕時放置的位置。
Note
如果選擇組中有不同的父控件,就不能移動組件。例如,在主窗體選了Button組件,又在Panel中選擇了SpeedButton組件,因這兩個組件有不同的父控件,就不能作為一組來移動它。
Tip
在選擇了控件時,在鍵盤上使用上下左右鍵的同時按住Ctrl來一次移動一個像素。此技術對控件組和單個控件都有效。使用此技術時Snap to grid特性將被忽略。用這種方法移動完組件后,組件不再位于坐標網格上——有一些偏移量。若拖動該組件,在拖動時它保持與坐標網格點的偏移量。若拖動該組件,在拖動時它保持與坐標網格點的偏移量。
Tip
如果用Ctrl+Arrow方式來移動控件,并想將它與坐標網格對齊,可以從右鍵快捷菜單中選擇【Position | Align to Grid】,控件的左上角會跳到最近坐標網格點。
拖動控件不能拖出它的父窗口,如果拖動組件離開窗體的左邊或上邊,會看見組件被剪切在窗體邊上;若拖動組件離開窗體的右邊或下端并釋放它,在窗體上就會出現滾動欄,可以滾動著看窗體的其余部分。而窗體的Width和Height屬性不會改變。如果拖動組件回到窗體的可見部分,則滾動欄取消。這是Form的缺省特性,如果不改變窗體的AutoScroll屬性為False,它都會發生。如下圖,顯示了被拖動部分離開窗體右邊界的Memo組件。注意滾動欄出現在窗體的低端。
轉載于:https://www.cnblogs.com/pchmonster/archive/2012/01/13/2321475.html
總結
以上是生活随笔為你收集整理的Delphi Form Designer (窗体设计器)之二的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计划实现一个开源的KV数据库——Simp
- 下一篇: C# 16进制与字符串、字节数组之间的转