2011-09-10 8 views
2

TabPageControlとその中にいくつかのTabPagesがあります。大きな画像をタブページに入れて30秒ごとに変更する必要があり、画像の一部だけを見たいと思っています。だから私はスクロールが必要です。しかし、私は次の問題を抱えています。スクロールバーをスライドさせると、画像が消えたり、1つの黒いストライプに塗りつぶされたりします。私はこの問題を探検しましたが、情報は見つかりませんでした。イメージをスクロール可能にする

+0

WinFormsを使用していると仮定するのは正しいですか?ピクチャボックスコントロールにピクチャを配置していますか? –

+0

WinFormsまたはWPFを使用していますか? PictureBoxを使用して画像を表示しますか?あなたのコードの一部を見せてください。 – Marco

+0

私はWinFormsを使用していますが、私はピクチャボックスにピクチャを入れません。私はtabpage.backgroundimageからグラフィックスを取得し、それを描画します。 'grBackground = Graphics.FromImage(this.currTPage.BackgroundImage); grBackground.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; grBackground.DrawLine(drawingPen、point1、point2); ' –

答えて

4

このためにPictureBoxを使用することをお勧めします。

TabPage.AutoScrollプロパティをtrueに設定すると、内容がタブページより大きい場合、タブページにスクロールバーが表示されます。

PictureBox.SizeModeをPictureBoxSizeMode.AutoSizeに設定すると、ピクチャボックスコントロールのサイズがロードされたイメージのサイズに自動的になります。画像ボックスがあるタブページより大きい場合は、タブページに必要なスクロールバーが表示され、期待どおりに動作するはずです。

tabPage1.AutoScroll = true; 
    pictureBox1.SizeMode = PictureBoxSizeMode.AutoSize; 

必要に応じて画像ボックスに描画することができます。あなたは通常、画像ボックスのPaintイベントでこの図面を行います。

0

もう一つの提案は、FlolayoutPanelの中​​にピクチャボックスを置くことです。 FlolayoutPanelの自動スクロールをtrueに設定し、画像サイズモードを通常に設定する

関連する問題