2014-02-06 50 views
-1

我form1的尺寸爲800,600 後來我就在Form1設計兩個面板:我怎樣才能手動創建一個pictureBox是完全在form1上的兩個面板之間?

Panel1的是位置:0,24尺寸:200437 是Panel2是在位置:584,24大小:200437

的結果是在表單的每一側有兩個面板。 現在,我做了我的程序,當你把鼠標放在某個地方在Form1領域的顯示一個圖片我在Form1構造函數創建:

pb = new AnimatedPictureBox.AnimatedPictureBoxs(); 
pb.Visible = false; 
pb.Size = new Size(500, 350); 
pb.Location = new Point((ClientSize.Width - pb.Width)/2, 
    (ClientSize.Height - pb.Height)/2); 

的問題是,新的PictureBox變量PB不在大小將填補兩個小組之間的所有區域。 我希望pictureBox的大小几乎填充兩個面板之間的所有空間寬度和高度可能留下一些空間,如每邊5個空格,所以會出現邊框。

我該如何計算pictureBox的大小應該是多少?

編輯**

這是一個圖像,程序工作正常。在左側和右側的每個面板上,我添加了4個圖片框。 當我將鼠標光標移動到其中一個pictureBoxes區域時,它將其內容顯示在中間的較大pictureBox中。

enter image description here

,這是它的樣子,當我把鼠標光標在pictureBoxes區域中間的圖片框不夠大的一個其寬度和高度dosent使大PictureBox的是excatly之間兩個小組。大pictureBox不高,不夠寬。

enter image description here

+0

圖形表示,將有助於瞭解您的需求更好地 –

+0

更新我的問題withi法師顯示大pictureBox寬度是好的我猜,但它的高度不夠好,不夠高的頂部和底部它dosent到達面板高度相同的地方。我的意思是面板頂部和底部的大pictureBox應該也是這個高度。 – user3200169

回答

1
如果你想調整尺寸,你應該使用 Dock屬性爲您的面板和設置 Anchor爲您的照片框後,使您的佈局穩定

。這樣的:

panel1.Dock = DockStyle.Left; 
panel2.Dock = DockStyle.Right; 
pb.Anchor = AnchorStyles.Left | AnchorStyles.Right; 

並在總體上放置在中心,你可以使用類似的東西:

var width = this.Width - panel1.Width - panel1.Margin.Horizontal 
       - panel2.Width - panel2.Margin.Horizontal; 

pb.Size = new Size(width, 300); // put your needed height here 

pb.Top = this.Height/2 - pb.Height/ 2; 
pb.Left = panel2.Left + panel2.Width + panel2.Margin.Right; 
+0

什麼是panel3?我沒有panel3 only panel1和panel2 – user3200169

+0

對不起,錯字... – JleruOHeP

相關問題