山本ワールド
Windowsプログラミング
アルゴリズム Vitual C++ 2008/2013によるWin32/Win64 APIレベルのプログラム 基礎 Vitual C++ 2008/2013によるAPIレベルのプログラム(32/64bit) Wix3でインストーラーを作る Visual C++ 2008 Standard Editonによるフォームアプリケーションのプログラム(32/64bit) Vitual C++ 2008 Standard EditonによるAPIレベルのプログラム(32/64bit) Windows 7対応 Visual C++ 2008 ExpressによるAPIレベルのプログラム Visual C++ 2005 ExpressによるAPIレベルのプログラム Visual C++ Versiosn 5 BORLAND C++ Windowsプログラム全般 Excel VBA その他ブラシの作成または取得
ブラシの作成または取得
ブラシには、ストックブラシ、単色の単純なブラシ、ハッチ模様のブラシ等があります。
引数が色です。
ハッチ模様のブラシの作成には、 CreateHatchBrush APIを使用します。 第1引数がハッチの種類、第2引数が色です。
ハッチの種類は以下のとおりです。
ストックオブジェクトからブラシを取得
ストックブラシはWindowsがあらかじめ作成しているブラシであり、GetStockObject APIにより取得できます。ストックオブジェクトなので、使用が終わってもDeleteObject APIによりプログラマが削除する必要はありません。ストックブラシには以下のものがあります。
BLACK_BRUSH 黒のブラシ
DKGRAY_BRUSH 濃い灰色のブラシ
GRAY_BRUSH 灰色のブラシ
LTGRAY_BRUSH 明るい灰色のブラシ
WHITE_BRUSH 白のブラシ
NULL_BRUSH 透明のブラシ
透明のブラシを使えば塗りつぶしをしなくなります。
使用例(C++のソース)
GetStockObject(WHITE_BRUSH);
ハッチの種類と色を指定してブラシを作成
単色の単純なブラシの作成には、 CreateSolidBrush APIを使用します。引数が色です。
ハッチ模様のブラシの作成には、 CreateHatchBrush APIを使用します。 第1引数がハッチの種類、第2引数が色です。
ハッチの種類は以下のとおりです。
使用例(C++のソース)
hBrush = CreateHatchBrush(HS_CROSS, RGB(0, 255, 0));
ビットマップからブラシを作成
リソースに埋め込まれているneko.bmpをブラシとして使用する例です。使用例(C++のソース)
HBITMAP hbitmap=LoadBitmap(hinst,TEXT("BMP_RC"));
HBRUSH hbrush=CreatePatternBrush(hbitmap);
リソースファイル
BMP_RC BITMAP "neko.bmp"
Copyright (C) 2012 山本ワールド All Rights Reserved.