処理範囲描画クラス
Namespace: FVIL.GDIAssembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
[SerializableAttribute] public sealed class CFviDrawProcarea : CFviOverlay |
Visual Basic |
---|
<SerializableAttribute> Public NotInheritable Class CFviDrawProcarea Inherits CFviOverlay |
Remarks
画像オブジェクトの処理範囲を 描画及び編集するクラスです。
初期値と範囲:
プロパティ | 初期値 | 範囲 | 備考 |
---|---|---|---|
Active | false | false/true | マウス操作活性化属性です。 処理範囲の編集を行う際は true です。 表示のみ行う際は false です。 |
Enable | false | false/true | 可視属性です。 処理範囲の表示または編集を行う際に、上位側のアプリケーションで true に設定してください。 |
Scaling | false | false のみ | 伸縮属性です。 マウスポインタでの操作がある為、クライアント座標で描画しています。 true にする事は想定していません。 |
ScalingMode | FVIL.GDI.ScalingMode.TopLeft | TopLeft のみ | サブピクセル計算に影響します。 変更するとアクセス違反を起こす可能性がありますので変更しないでください。 |
このオーバレイで描画される図形は、 下記のように Figures 配列に格納されていますが、 将来的に配列の内容は変更される可能性があります。 この初期化内容に依存したプログラムを作らないようにしてください。 また、この配列をクリアされることを想定していません。
配列の初期化内容:プロパティ | 初期値 | 範囲 | 備考 |
---|---|---|---|
Figures[0] | CFviGdiImage | ※インスタンスの差し替えは想定していません。 | 処理範囲内部の塗り潰し部分です。 |
Figures[1] | CFviGdiRectangle | ※インスタンスの差し替えは想定していません。 | 処理範囲の外枠です。 |
Figures[2] | CFviGdiString | ※インスタンスの差し替えは想定していません。 | 処理範囲の位置とサイズを表示する文字列です。 |
Examples
スクリーンショット:
ソースコード (1):
マウスカーソルで処理範囲の編集を行う場合は Active プロパティを true に設定します。 下記のコードは、現在の属性を反転させて true/false を切り替える例です。
ソースコード (2):
処理範囲の表示のみを行う場合は Active プロパティを false に設定し、 Enable プロパティを true に設定します。 下記のコードは、現在の属性を反転させて true/false を切り替える例です。
ソースコード (1):
マウスカーソルで処理範囲の編集を行う場合は Active プロパティを true に設定します。 下記のコードは、現在の属性を反転させて true/false を切り替える例です。
C# | Copy |
---|---|
private void OnCursorProcarea(object sender, EventArgs e) { ImageView.Display.OverlayProcarea.Active = !ImageView.Display.OverlayProcarea.Active; ImageView.Refresh(); } |
ソースコード (2):
処理範囲の表示のみを行う場合は Active プロパティを false に設定し、 Enable プロパティを true に設定します。 下記のコードは、現在の属性を反転させて true/false を切り替える例です。
C# | Copy |
---|---|
private void OnOverlayProcarea(object sender, EventArgs e) { ImageView.Display.OverlayProcarea.Enable = !ImageView.Display.OverlayProcarea.Enable; if (ImageView.Display.OverlayProcarea.Enable == true) ImageView.Display.OverlayProcarea.Active = false; ImageView.Refresh(); } |