Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
最大化したときのズレに関して。
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=9627#CommentId14614
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
るきお
 (社会人)
投稿日時
2010/5/9 17:44:18
こんにちは。
質問の内容がちょっとわかりにくいです。
具体的に困っていることがあればそれを書いていただくか、
そうでなくても何か具体例があったほうがよいと思います。
一般論的には、
AIWさんがおっしゃっているようにDockプロパティやAnchorプロパティがコントロールの配置の問題のほとんどを簡単に解決してくれます。
コントロールではない描画では確かにこれらのプロパティは使用できませんが、考え方としては同じです。
つまり、フォームのサイズが変更された場合、グラフィックをどうしたいのかというポリシーを持って、それをプログラムすることになります。
ポリシーの例1:絶対位置。絶対サイズ。
フォームの大きさにかかわらず、グラフィックはその親コントロール(FormやPictureBoxなど)の左上隅から等距離等サイズで描画する。
→普通にプログラムしてればOK
ポリシーの例2:親コントロールのサイズに比例
親コントロールのサイズが変更された場合、グラフィックのサイズは同じ比率で変更される。
→描画プログラムで座標に比率を掛け算するようにする。
具体的には、親コントロールのPaintイベントで描画するときに、DrawXXX系メソッドの引数の各種座標を固定座標ではなく、比率をかけたものを指定するようにする。
ポリシーの例3:親コントロールの右下隅からの距離が起点。サイズは等サイズで描画
…以下省略。
具体的に書いていただければ、具体的なプログラムも紹介できると思いますよ。