[Atelier Blue アトリエブルー]HomeプログラミングManaged DirectXDraw>四角を描く

四角を描く

せっかくですので何か描いてみましょう。

        private void timer__Tick(object sender, EventArgs e)
{
//非表示時と最小化時は描画しない。(下の2行が無いとエラー起こします)
if(!this.Visible)return;
if(this.WindowState == FormWindowState.Minimized)return;

//真っ黒に塗る
secondarySuface_.ColorFill(Color.Black);

//線の情報と塗り潰しの色を指定する。
secondarySuface_.DrawWidth = 1;
secondarySuface_.FillColor = Color.Red;
secondarySuface_.ForeColor = Color.Yellow;

//四角を描く
secondarySuface_.DrawBox(100,100,130,140);

Rectangle rect =new Rectangle();

rect.Size =this.ClientSize;
rect.Location =this.PointToScreen(this.ClientRectangle.Location);
primarySurface_.Draw(rect,secondarySuface_,DrawFlags.Wait);

}

線や色の情報を指定する。

何かを描くときはどんなスタイルで描くかの情報が必要になります。

プロパティ 役目
DrawStyle 描画スタイル
DrawWidth 描画幅
FillColor 塗りつぶし色
FillStyle 塗り潰しスタイル
ForeColor 前景色(線の色)

これらを設定すれば大丈夫です。といいたいところなんですが、線のスタイルint型です。リファレンスにも詳しいことが載っていません。何も設定しないと実線で書くようです。そのため、そこはいじらないでおきましょう。触らぬ神にたたりなし、描かないコードにバグなしです。

DrawBox

これで四角形を描く事が出来ます。数字はインテリジェンスの通りの並びで打ち込めばいいです。一応書いておくと

public void DrawBox(
    int left,
    int top,
    int right,
    int bottom
);

後半二つは四角形のサイズではないので注意してください。あともう一つ、MSDNでDraw~の説明が何故か「デバイスコンテキスト取得する」となっています。嘘です。デバイスコンテキストは取得できません。


ページの一番上へ
前のページへ 一覧に戻る 次のページへ
初版2006-3-4
[Atelier Blue アトリエブルー]HomeプログラミングManaged DirectXDraw>四角を描く