C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

PictureBoxの描画可能領域を取得するには?

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■92318 / inTopicNo.1)  PictureBoxの描画可能領域を取得するには?
  
□投稿者/ 爺 (1回)-(2019/09/10(Tue) 16:19:18)

分類:[.NET 全般] 

PictureBoxに関してですが、

BoarderStyleの設定に
Noneではなく
FixedSingleにしていると
画像を描画可能な領域が
PictureBox.WidthやPictureBox.Heightで取得できる領域よりも
ラインの太さ分(-2)小さくなります。

単にPictureBox.WidthやPictureBox.Heightから-2引けば良いだけなのですが、
BoarderStyleとしてNoneを使う場合もあり得るので、

PictureBoxから描画可能領域を取得したいのですが
このようなことは可能でしょうか?

ちなみに、g.ClipBounds.Widthでいけるかと思ったのですが、
PictureBoxの上に別のウインドウが乗っかった場合に、
そのウインドウを除外した領域が有効範囲となってしまい
うまくいきません。


引用返信 編集キー/
■92319 / inTopicNo.2)  Re[1]: PictureBoxの描画可能領域を取得するには?
□投稿者/ Hongliang (892回)-(2019/09/10(Tue) 16:26:25)
ClientRectangleプロパティでどうでしょうか。
引用返信 編集キー/
■92320 / inTopicNo.3)  Re[1]: PictureBoxの描画可能領域を取得するには?
□投稿者/ 魔界の仮面弁士 (2371回)-(2019/09/10(Tue) 16:26:47)
No92318 (爺 さん) に返信
> ラインの太さ分(-2)小さくなります。

Label1.Text = PictureBox1.Parent.RectangleToScreen(PictureBox1.Bounds).ToString()
Label2.Text = PictureBox1.RectangleToScreen(PictureBox1.ClientRectangle).ToString()
引用返信 編集キー/
■92321 / inTopicNo.4)  Re[1]: PictureBoxの描画可能領域を取得するには?
□投稿者/ ぶなっぷ (208回)-(2019/09/10(Tue) 16:35:59)
ClientSizeプロパティもあります。
引用返信 編集キー/
■92327 / inTopicNo.5)  Re[2]: PictureBoxの描画可能領域を取得するには?
□投稿者/ 爺 (2回)-(2019/09/10(Tue) 18:21:54)
皆様ありがとうございます。

いろいろな方法で取得可能なことが分かりました。

解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ