![](/img/trans.png)
[英]What's the difference between Control.Select() and Control.Focus()?
[英]What is the difference between control's bounds and setting X,Y,Width,Height of a control?
因此,可以說我在winform上有一個面板,我希望它顯示在特定點,並且在winform上應該有特定的寬度和高度。 另外,我想在運行時執行此操作。
那么,移動和設置面板尺寸的區別和正確方法是什么?
這條路:
Panel1.bounds.X:=10;
Panel1.bounds.Y:=10;
Panel1.bounds.width:=100;
Panel1.bounds.height:=103;
或者這樣:
Panel1.Left := 10;
Panel1.Top := 10;
Panel1.width:=100;
Panel1.height:=103;
或兩種方式都應在面板上產生相同的效果。
我正在嘗試弄清楚我的程序到底出了什么問題...盡管我問了一個特定於我的問題的問題,但是沒有人試圖回答甚至發表評論。 因此,我要問一點點問題來理解我的問題。
如果要設置Bounds
,則需要使用矩形。 (請原諒我示例中的任何語法錯誤;我的Delphi有點生疏。)
BoundsRect: Rectangle;
BoundsRect.X = 10;
BoundsRect.Y = 10;
BoundsRect.Width := 100;
BoundsRect.Height := 103;
Panel1.Bounds := BoundsRect;
通常,如果要設置或更改多個屬性,可以使用該屬性。 如果只想設置一個或兩個屬性,則可以使用Width
, Top
等。
另一個不同之處是,每次您設置這些屬性之一( Bounds
或單個屬性之一)時,都會在幕后進行大量工作(移動和重繪窗口等)。 從矩形設置Bounds
屬性將減少工作量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.