Wide Studio Object Reference

Wide Studio Home
Up to


クラスの型

WSCvdrawingArea

メソッド関数仕様



setForeColor 関数の説明

書式
long setForeColor(char* cname)
機能
描画色を色名称で指定する関数です。 drawLine 等の関数が実行された場合に、この関数で指定した色で 描画が行われます。
処理
drawLine 等の関数で用いる描画色を指定します。
引数
(in)char* cname 色名称

色名称は、次のフォーマットで指定します。
#RRGGBB
RR: 00〜ffの範囲で16進数で赤の輝度を指定します。
GG: 00〜ffの範囲で16進数で緑の輝度を指定します。
BB: 00〜ffの範囲で16進数で青の輝度を指定します。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
サンプル
#include <WSCvdrawingArea.h>
void sample_proc(WSCbase* object){
  WSCvdrawingArea* drawing_a =(WSCvdrawingArea*)object->cast("WSCvdrawingArea");
  if (drawing_a == NULL){
    return;
  }

  //表示色の設定と矩形の描画
  drawing_a->setForeColor("#ffff00");
  drawing_a->drawRect(150,50,100,100);

  //表示色の設定と塗りつぶし矩形の描画
  drawing_a->setForeColor("#00ff00");
  drawing_a->drawFillRect(20,100,50,50);

  //表示色の設定と円弧の描画
  drawing_a->setForeColor("#0000ff");
  drawing_a->drawArc(50,200,50,50,60*64,270*64);

  //表示色の設定とハッチパターンによる塗りつぶし円弧(パイ)の描画
  drawing_a->setForeColor("#ff00ff");
  drawing_a->setHatchPattern(7);
  drawing_a->drawFillArc(150,200,100,50,60*64,270*64, 0 /*PIE*/ );

  //表示色の設定とハッチパターンによる塗りつぶし円弧の描画
  drawing_a->setForeColor("#ff00ff");
  drawing_a->setHatchPattern(6);
  drawing_a->drawFillArc(250,200,100,50,60*64,270*64, 1 /*CHORD*/ );

  //多角形の描画
  WSCpoint pt[3];
  pt[0].x = 300;
  pt[0].y = 300;
  pt[1].x = 330;
  pt[1].y = 330;
  pt[2].x = 300;
  pt[2].y = 330;
  drawing_a->setForeColor("#00ffff");
  drawing_a->setHatchPattern(0);
  drawing_a->drawFillPoly(pt,3);

  //表示色の設定と線の描画
  drawing_a->setForeColor("#ff0000");
  drawing_a->setLineWidth(2); //線幅 2ドット
  drawing_a->setLineDashType(1);  //点線
  drawing_a->drawLine(50,50,100,100);


  //文字列の描画
  drawing_a->setForeColor("#000000");
  drawing_a->drawString(100,300,100,30,0,WS_CENTER,"ABCDE1234");
  //背景付き文字列の描画
  drawing_a->setBackColor("#808080");
  drawing_a->drawFillString(100,330,100,30,0,WS_CENTER,"ABCDE1234");

  //リージョンによるクリッピング
  drawing_a->setRegion(70,70,80,80);
  drawing_a->drawLine(50,50,100,100); //70,70 - 80,80 が描画されます。
}



setBackColor 関数の説明

書式
long setBackColor(char* cname)
機能
背景色を指定を色名称で指定する関数です。 drawFillRect 等の関数を実行した場合に、この関数で指定された 色で背景を塗りつぶします。
処理
drawFillRect 等の関数で用いる背景色を指定します。
引数
(in)char* cname 色名称

色名称は、次のフォーマットで指定します。
#RRGGBB
RR: 00〜ffの範囲で16進数で赤の輝度を指定します。
GG: 00〜ffの範囲で16進数で緑の輝度を指定します。
BB: 00〜ffの範囲で16進数で青の輝度を指定します。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
サンプル
setForeColor() を参照してください。



setLineWidth 関数の説明

書式
long setLineWidth(short linewidth)
機能
描画する線の太さを指定する関数です。 drawLine 等の関数を実行した場合に、この関数で指定された 線幅で描画されます。
処理
drawLine 等の関数で用いる線幅を指定します。
引数
(in)short linewidth 線幅
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
なし。
サンプル
setForeColor() を参照してください。



setLineDashType 関数の説明

書式
long setLineDashType(char no)
機能
描画する線属性を指定する関数です。 drawLine 等の関数を実行した場合に、この関数で指定された 線属性で描画されます。
処理
drawLine 等の関数で用いる線の点線属性を指定します。
引数
(in)char no 点線属性

点線属性に指定できる値には、次のようなものがあります。
属性値 意味
0 実線
1 鎖線
2 長鎖線
3 一点鎖線
4 二点鎖線
5 長一点鎖線
6 長二点鎖線
7 細点線
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
サンプル
setForeColor() を参照してください。



setHatchPattern 関数の説明

書式
long setHatchPattern(char no)
機能
塗りつぶし属性を指定する関数です。 drawRect 等の関数を実行した場合に、この関数で指定された 塗りつぶし属性で描画されます。
処理
引数
(in)char no 塗りつぶし属性

塗りつぶし属性に指定できる値には、 次のようなものがあります。
属性値 意味
0 ベタ塗
1 左下斜線
2 右下斜線
3 縦線
4 横線
5 斜め交差
6 縦横交差
7 ドット
返値
WS_NO_ERR:成功、WS_ERR:失敗
サンプル
setForeColor() を参照してください。
注意
なし。



setRegion 関数の説明

書式
long setRegion(short x,short y,unsigned short w,unsigned short h);
機能
描画する領域を指定する関数です。 指定した領域以外は描画の対象から外します。
処理
引数
(in)short x X座標
(in)short y Y座標
(in)unsigned short w 領域の横幅
(in)unsigned short h 領域の縦幅
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
なし。
サンプル
setForeColor() を参照してください。



drawArc 関数の説明

書式
long drawArc(short x,short y,unsigned short w, unsigned short h,short a1,short a2);
機能
円弧、楕円弧を描画する関数です。 引数で指定したX座標、Y座標、横幅、縦幅の長方形に内接する 円または楕円の全部または一部を描画します。 X軸右水平を0度とし、反時計回りで円弧開始角度と中心角を 指定します。1/64 度の精度確保するため、 角度の値は 64 倍した数を与えなければなりません。 完全な円または楕円を描く場合は、中心角に 360 * 64 と指定します。
処理
引数
(in)short x X座標
(in)short y Y座標
(in)unsigned short w 領域の横幅
(in)unsigned short h 領域の縦幅
(in)short a1 円弧の開始角度
(in)short a2 円弧の終了角度
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawFillArc 関数の説明

書式
long drawFillArc(short x,short y,unsigned short w, unsigned short h,short a1,short a2,char kind);
機能
塗りつぶし円弧、楕円弧を描画する関数です。 引数で指定したX座標、Y座標、横幅、縦幅の長方形に内接する 円または楕円の全部または一部を描画します。 X軸右水平を0度とし、反時計回りで円弧開始角度と終了角度を 指定します。1/64 度の精度を確保するため、 角度の値は 64 倍した数を与えなければなりません。 完全な円または楕円を描く場合は、中心角に 360 * 64 と指定します。 円弧の種別を指定することによって、扇型の円弧、弓型の円弧を 描画することができます。
処理
引数
(in)short x X座標
(in)short y Y座標
(in)unsigned short w 領域の横幅
(in)unsigned short h 領域の縦幅
(in)short a1 円弧の開始角度
(in)short a2 円弧の終了角度
(in)char kind 塗りつぶし円弧の種別
塗りつぶし種別に指定できる値には、 次のようなものがあります。
属性値 意味
0 扇型
1 弓型
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawLine 関数の説明

書式
long drawLine(short x1,short y1,short x2,short y2);
機能
線を描画する関数です。 指定した座標(x1,y1) から (x2,y2)の位置まで線を描画します。
処理
引数
(in)short x1 線の開始座標X
(in)short y1 線の開始座標Y
(in)short x2 線の終了座標X
(in)short y2 線の終了座標Y
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawLines 関数の説明

書式
long drawLines(WSCpoint* pt,long num);
機能
折れ線を描画する関数です。第一引数の WSCpoint 配列に 含まれる座標を順に結んだ線を描画します。 第二引数に座標の数を渡します。
処理
引数
(in)WSCpoint* pt 端点座標の配列
(in)long num 端点の数

WSCpoint は、メンバ x,y を持ちます。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCpoint pt[3];
  pt[0].x = 300;
  pt[0].y = 300;
  pt[1].x = 330;
  pt[1].y = 330;
  pt[2].x = 300;
  pt[2].y = 330;
  drawing_a->setForeColor("#00ffff");
  drawing_a->drawLines(pt,3);



drawRect 関数の説明

書式
long drawRect(short x,short y,unsigned short w,unsigned short h);
機能
矩形を描画する関数です。指定した座標位置(x,y)を 左上頂点とし、横幅 w、縦幅 h の矩形を描画します。
処理
引数
(in)short x X座標
(in)short y Y座標
(in)unsigned short w 矩形の横幅
(in)unsigned short h 矩形の縦幅
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawFillRect 関数の説明

書式
long drawFillRect(short x,short y,unsigned short w,unsigned short h);
機能
塗りつぶし矩形を描画する関数です。 左上角を(x,y) とした横幅 w、縦幅 h の塗りつぶし矩形を描画します。 塗りつぶしパターンには、setHatchPattern 関数で指定した 塗りつぶし属性が用いられます。
処理
引数
(in)short x X座標
(in)short y Y座標
(in)unsigned short w 矩形の横幅
(in)unsigned short h 矩形の縦幅
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawRects 関数の説明

書式
long drawRects(WSCrect* rect,long num);
機能
複数個の矩形を描画する関数です。 第一引数の WSCrect 配列で指定された複数の矩形を描画します。 第二引数の矩形の個数を指定します。
処理
引数
(in)WSCrect* rect 矩形の配列
(in)long num 端点の数

WSCrect は、メンバ x,y,width,height を持ちます。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCrect rect[3];
  rect[0].setRect(300,300,10,10);
  rect[1].setRect(320,300,10,10);
  rect[2].setRect(340,300,10,10);
  drawing_a->setForeColor("#00ffff");
  drawing_a->drawRects(rect,3);



drawFillRects 関数の説明

書式
long drawFillRects(WSCrect* rect,long num);
機能
複数個の塗りつぶし矩形を描画する関数です。 第一引数の WSCrect 配列で指定された複数の塗りつぶし 矩形を描画します。塗りつぶしパターンには、 setHatchPattern 関数で指定された塗りつぶし属性が用いられます。 第二引数に矩形の個数を指定します。
処理
引数
(in)WSCrect* rect 矩形の配列
(in)long num 端点の数

WSCrect は、メンバ x,y,width,height を持ちます。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCrect rect[3];
  rect[0].setRect(300,300,10,10);
  rect[1].setRect(320,300,10,10);
  rect[2].setRect(340,300,10,10);
  drawing_a->setForeColor("#00ffff");
  drawing_a->drawFillRects(rect,3);



drawPoly 関数の説明

書式
long drawPoly(WSCpoint* pt,long num);
機能
多角形を描画する関数です。第一引数の WSCpoint 配列に 含まれる点を順に結ぶ多角形を描画します。 第二引数に座標の数を渡します。 多角形を閉じるために、最後に始点座標を指定し直す必要は ありません。配列の最後の座標から先頭の座標へ自動的に 線が描画されます。
処理
引数
(in)WSCpoint* pt 端点座標の配列
(in)long num 端点の数

WSCpoint は、メンバ x,y を持ちます。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCpoint pt[3];
  pt[0].x = 300;
  pt[0].y = 300;
  pt[1].x = 330;
  pt[1].y = 330;
  pt[2].x = 300;
  pt[2].y = 330;
  drawing_a->setForeColor("#00ffff");
  drawing_a->drawPoly(pt,3);



drawFillPoly 関数の説明

書式
long drawFillPoly(WSCpoint* pt,long num);
機能
塗りつぶし多角形を描画する関数です。 第一引数の WSCpoint配列で指定した座標を順に 塗りつぶし多角形を描画します。 第二引数で座標の数を指定します。多角形を閉じるために、 最後に始点座標を指定し直す必要はありません。 配列の最後の座標から先頭の座標へ自動的に線が描画されます。 塗りつぶしパターンには、setHatchPattern 関数で指定された 塗りつぶし属性が用いられます。
処理
引数
(in)WSCpoint* pt 端点座標の配列
(in)long num 端点の数

WSCpoint は、メンバ x,y を持ちます。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor() を参照してください。



drawGradation 関数の説明

書式
long drawGradation(long type,short col1,short col2, short col3,short x,short y,WSCushort w,WSCushort h, WSCuchar grad_margin);
機能
グラデーションされた矩形を描画する関数です。 指定された3色を使用して、色1〜色2〜色3へと グラデーションされた矩形を描画します。 中間の色2の幅をドットで指定することにより、 色変化のスピードを調整します。 グラデーション種別により、変化する方向を指定できます。
処理
引数
(in)long type グラデーションの種別
(in)short col1 色1
(in)short col2 色2
(in)short col3 色3
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)WSCuchar grad_margin 色2の幅

グラデーションされた矩形領域を指定し、 グラデーションのマージンには、色2の幅をドット指定します。 グラデーション種別に指定できる値には、 次のようなものがあります。
グラデーション種別 意味
WS_GR_LT_RB 左上→右下
WS_GR_RT_LB 右上→左下
WS_GR_LB_RT 左下→右上
WS_GR_RB_LT 右下→左上
WS_GR_T_B 上→下
WS_GR_B_T 下→上
WS_GR_L_R 左→右
WS_GR_R_L 右→左
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  short cno1 = WSGIappColorSet()->getColorNo("#888888");
  short cno2 = WSGIappColorSet()->getColorNo("#aaaaaa");
  short cno3 = WSGIappColorSet()->getColorNo("#000000");
  drawing_a->drawGradation(WS_GR_T_B,cno1,cno2,cno3,10,10,100,50,10);



drawImage 関数の説明

書式
long drawImage(short x,short y,WSCushort w,WSCushort h, WSDimage* img,char align);
機能
画像構造体で指定された画像を指定した矩形内に描画する関数です。 画像構造体は WSDimage に保持されます。 描画領域への描画位置は、アラインメント属性で指定できます。
処理
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)WSDimage* img 表示させたい画像
(in)char align アラインメント

アラインメントに指定できる値には、 次のようなものがあります。
属性値 意味
WS_LEFT 左寄
WS_RIGHT 右寄
WS_CENTER 中央
WS_TOP 上寄
WS_BOTTOM 下寄
WS_LEFT_TOP 左上寄
WS_LEFT_BOTTOM 左下寄
WS_RIGHT_BOTTOM 右下寄
WS_RIGHT_TOP 右上寄
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCimage* image = WSGIappImageSet()->getImage("001.jpg");
  drawing_a->drawImage(10,10,100,100,image,WS_CENTER);



drawImage 関数の説明

書式
long drawImage(short x,short y,WSCushort w,WSCushort h, char* img,char align);
機能
ファイル名称で指定された画像を指定した矩形内に描画する関数です。 描画領域への描画位置は、アラインメント属性で指定できます。
処理
指定された画像を指定矩形内に描画します。
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)char* img 表示させたい画像のファイル名
(in)char align アラインメント

アラインメントに指定できる値には、 次のようなものがあります。
属性値 意味
WS_LEFT 左寄
WS_RIGHT 右寄
WS_CENTER 中央
WS_TOP 上寄
WS_BOTTOM 下寄
WS_LEFT_TOP 左上寄
WS_LEFT_BOTTOM 左下寄
WS_RIGHT_BOTTOM 右下寄
WS_RIGHT_TOP 右上寄
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  drawing_a->drawImage(10,10,100,100,"001.jpg",WS_CENTER);



drawStretchedImage 関数の説明

書式
long drawStretchedImage(short x,short y, WSCushort w,WSCushort h, WSDimage* img);
機能
構造体で指定された画像を指定された矩形のサイズに 合わせて伸縮して描画する関数です。
処理
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)WSDimage* img 表示させたい画像

返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  WSCimage* image = WSGIappImageSet()->getImage("001.jpg");
  drawing_a->drawStretchedImage(10,10,100,100,image);



drawStretchedImage 関数の説明

書式
long drawStretchedImage(short x,short y, WSCushort w,WSCushort h, char* img);
機能
ファイル名称で指定された画像を指定された矩形のサイズに 合わせて伸縮して描画する関数です。
処理
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)char* img 表示させたい画像ファイル名

返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
  drawing_a->drawStretchedImage(10,10,100,100,"001.jpg");



drawString 関数の説明

書式
long drawString(short x,short y,WSCushort w,WSCushort h, char font_no,char align,char* string, long encoding = WS_EN_DEFAULT);
機能
文字列を矩形内に描画する関数です。 エンコーディングに従がって指定された文字列を、 指定された矩形内に表示します。
処理
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)char font_no フォント番号
(in)char align アラインメント
(in)char* string 表示させたい文字列
(in)long encoding 文字列のエンコーディング

フォント番号には、0番からのフォント番号を指定します。 アラインメントに指定できる値には、 次のようなものがあります。
属性値 意味
WS_LEFT 左寄
WS_RIGHT 右寄
WS_CENTER 中央
WS_TOP 上寄
WS_BOTTOM 下寄
WS_LEFT_TOP 左上寄
WS_LEFT_BOTTOM 左下寄
WS_RIGHT_BOTTOM 右下寄
WS_RIGHT_TOP 右上寄

エンコーディングに指定できる値には、 次のようなものがあります。省略すると WS_EN_DEFAULT が指定されます。
属性値 意味
WS_EN_DEFAULT 現在の設定を指定(省略時の値)
WS_EN_LOCALE 現在の LANG 環境変数の設定を指定
WS_EN_NONE 設定を行わない
WS_EN_ISO8859_1 ISO8859(1) を指定
WS_EN_ISO8859_2 ISO8859(2) を指定
WS_EN_ISO8859_3 ISO8859(3) を指定
WS_EN_ISO8859_4 ISO8859(4) を指定
WS_EN_ISO8859_5 ISO8859(5) を指定
WS_EN_ISO8859_6 ISO8859(6) を指定
WS_EN_ISO8859_7 ISO8859(7) を指定
WS_EN_ISO8859_8 ISO8859(8) を指定
WS_EN_ISO8859_9 ISO8859(9) を指定
WS_EN_ISO8859_10 ISO8859(10) を指定
WS_EN_ISO8859_11 ISO8859(11) を指定
WS_EN_ISO8859_12 ISO8859(12) を指定
WS_EN_ISO8859_13 ISO8859(13) を指定
WS_EN_ISO8859_14 ISO8859(14) を指定
WS_EN_ISO8859_15 ISO8859(15) を指定
WS_EN_UTF8 UTF8 を指定
WS_EN_KOI8R KOI8R を指定
WS_EN_EUCJP EUCJP を指定
WS_EN_SJIS SJIS を指定
WS_EN_EUCKR EUCKR を指定
WS_EN_EUCCN EUCCN を指定
WS_EN_BIG5 BIG5 を指定
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor()を参照してください。



drawFillString 関数の説明

書式
long drawFillString(short x,short y,WSCushort w,WSCushort h, char font_no,char align,char* string, long encoding = WS_EN_DEFAULT);
機能
文字列を矩形内に背景色付きで表示する関数です。 エンコーディングに従がって指定された文字列を、 指定された矩形内に表示します。 背景は setBackColor 関数で指定された色で塗りつぶされます。
処理
引数
(in)short x 座標X
(in)short y 座標Y
(in)WSCushort w 横幅
(in)WSCushort h 縦幅
(in)char font_no フォント番号
(in)char align アラインメント
(in)char* string 表示させたい文字列
(in)long encoding 文字列のエンコーディング

引数の詳細は、drawString の項を参照ください。
返値
WS_NO_ERR:成功、WS_ERR:失敗
注意
EXPOSEトリガで起動されるイベントプロシージャ内でご使用下さい。
サンプル
setForeColor()を参照してください。


Document Release 3.70

For Use with Wide Studio Release 3.70, Spring 2004


WideStudio Home | Up to

Copyright(C) WideStudio Development Team, 1999-2004 Last modified: May. 25, 2004