SETWRITEMODE

グラフィックス関数LINETOPOLYGON,および RECTANGLE 関数で線を描画する時に使用される論理書き込みモードを設定します。

モジュールUSE DFLIB

形式

result = SETWRITEMODE (wmode)

wmode
(入力) INTEGER(2)。設定する書き込みモード。以下のシンボル定数値 (\DF98\INCLUDE サブディレクトリの DFLIB.F90 に定義されています) の 1 つでなければなりません。

さらに,以下の 2 進ラスタ操作定数 (Win32 API SetROP2 のオンライン・ドキュメントを参照) の 1 つを使うことができます。

結果

結果の型は INTEGER(2) です。成功すれば,結果は以前の書き込みモードで,そうでなければ -1 です。

現在のグラフィックス色は SETCOLORRGB (または SETCOLOR) で設定され,現在の背景色は SETBKCOLORRGB (または SETBKCOLOR) で設定されます。例として,背景色を黄色 (#00FFFF),グラフィックス色を紫色 (#FF00FF) に設定する場合を考えます。以下のようになります。

	oldcolor = SETBKCOLORRGB(#00FFFF)
	CALL CLEARSCREEN($GCLEARSCREEN)
	oldcolor = SETCOLORRGB(#FF00FF)

そして,書き込みモードを $GAND オプションで設定した場合,線は赤色 (#0000FF) で描画されます。$OR オプションで設定した場合,線は白色 (#FFFFFF) で描画されます。$GXOR オプションで設定した場合,線は青緑色 (#FFFF00) で描画されます。$GPRESET オプションで設定した場合,線は緑色 (#00FF00) で描画されます。書き込みモードを $GPSET に設定すると,線はグラフィックス色で描画されます。

互換性

STANDARD GRAPHICS QUICKWIN GRAPHICS LIB

関連情報

GETWRITEMODEGRSTATUSLINETOPOLYGONPUTIMAGERECTANGLESETCOLORSETLINESTYLE

	! QuickWin または Standard Graphics アプリケーションでビルドします。
	USE DFLIB
	INTEGER(2) result, oldmode
	INTEGER(4) oldcolor
	TYPE (xycoord) xy

	oldcolor = SETBKCOLORRGB(#00FFFF)
	CALL CLEARSCREEN ($GCLEARSCREEN)
	oldcolor = SETCOLORRGB(#FF00FF)
	CALL MOVETO(INT2(0), INT2(0), xy)
	result = LINETO(INT2(200), INT2(200)) ! 紫色

	oldmode = SETWRITEMODE( $GAND)
	CALL MOVETO(INT2(50), INT2(0), xy)
	result = LINETO(INT2(250), INT2(200)) ! 赤色
	END