簡體   English   中英

如何在圖片框上獲取滾動條

[英]How can I get scrollbars on Picturebox

我有PictureBox picture

我使用:

picture.Size = bmp.Size;
picture.Image = bmp;

假設有兩個整數maxWidthmaxHeigth
picture大小超過maxWidth和/或maxHeight時,我想向圖片添加垂直/水平滾動條。 我怎樣才能做到這一點?

您可以使用Panel控件輕松完成

在表單中插入一個面板,比如 panel1 並設置

panel1.AutoScroll = true;

插入一個PictureBoxPanel ,說圖片並設置

picture.SizeMode = PictureBoxSizeMode.AutoSize;

並設置圖像

picture.Image = bmp;

希望這可以幫助

這是一個項目,其中一個人構建了一個ImagePanel用戶控件,您可以將其拖放到表單上; 它為您提供滾動條和縮放功能。

http://www.codeproject.com/KB/graphics/YLScsImagePanel.aspx

我通過在面板控件中放置一個圖片框來讓它工作,我將面板的 AutoScroll 屬性設置為 true,但我也將面板的 Autosize 屬性設置為 True,將面板的 Dock 屬性設置為 Fill(這樣當用戶調整表格 - 小組也是如此)。 對於圖片框,我將它的 Dock 屬性設置為無,並將 SizeMode 設置為自動大小(因此它也會在面板和表單調整大小時調整大小。它就像一個魅力,圖片框有滾動條,當用戶調整表單大小時 - 一切都還在正確放置!

另一個建議是將圖片框放在 FlowlayoutPanel 中。

FlowlayoutPanel的Auto scroll設置為true,圖片大小模式設置為normal

使用 FlowlayoutPanel 確保面板中的圖像始終位於 0,0

它對我有用。

PictureBox picture = new PictureBox();
picture.Image=Image.FromFile("image.bmp");
picture.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
Panel panel = new Panel();
panel.Size=new Size(800,600);
panel.Location=new Point(0,0);
panel.AutoScroll=true;
panel.Controls.Add(picture);
this.Controls.Add(panel);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM