.NET(VB.NET、C#)に対応した画像や線などの描画向けにPictureBoxコントロールを継承した
GraphicsBoxなるコントロールを作成しました。
このGraphicsBoxはPictureBoxを使っていて足りないな~と思う、
- 再描画してくれるGraphicsオブジェクト
- MouseWheelイベント
- PensやColorsのようなFontのクラス
をそれぞれ、
- Graphicsプロパティ
コントロールがリサイズされるたびに、Graphicオブジェクトを再確保し、プロパティで取得できます。
- MouseWheeledイベント
GraphicsBoxにフォーカスがある時(Focus()をした後)、マウスホイールを上下に回転させたときにMouseWheeledイベントが発生します。
- Fontsプロパティ
フォームのデザイナ上のプロパティのFontsでGraphicsBoxへFontを指定します。
このFontを使用する場合は、 graphicsbox1.Fonts などとすると、Fontsプロパティで取得できます。
としてPictureBoxに追加しました。
対象のフレームワークを.NET Framework2.0としました。
で、このGraphicsBoxコントロールは
GraphicsBoxSample_Ver111.zip
よりダウンロードできます。
このコントロールの実態は上記ファイルを解凍したフォルダ内の
ImagingSolution.Control.GraphicsBox.dll
となります。
使い方はVisual Studioを起動し、ツールボックス上で右ボタン→アイテムの選択→参照ボタンをクリック→ImagingSolution.Control.GraphicsBox.dllを選択
すると、ツールボックスにGraphicsBoxのアイコンが表示されるので、あとはPictureBoxと同様に使用できます。
GraphicsBoxSample_Ver111.zipをダウンロードするとVisual Studio 2010 Express EditionのVB.NET、C#のサンプルもつけているので、お試し下さい。
サンプルプログラムを実行し、ウィンドウ内をクリックした後、マウスホイールを上下させると下図のように線と文字がホイールの回転に合わせて上下しながら表示されます。