
縦10ドット、横70ドット の領域を、横に7等分して
虹の色をつける。
□□□■■■■
という感じにしたいんだけど、塗りつぶし関係のソースを
教えてください。
sikaku01 = CreateWindow(
"STATIC",
"",
SS_WHITE | WS_CHILD | WS_VISIBLE,
0,0,10,10,
hWnd,
NULL,
hInstance,
NULL);
これを7個作って、sikaku01 の領域の色を変える方法しか
分かりませんでした。
もっといい方法があると思うんです。
領域の色は固定じゃなくて、ランダムにチラチラと変色
させたいから、色を変えられる領域で、その領域を塗りつぶす
方法が知りたいです。
SetPixel( ) での1ドットずつの描画も思いついたけど、
遅いし、領域ごとの塗りつぶしの方法でやりたいと思いました。
コンパイラは BCC32 を使っています。
No.2ベストアンサー
- 回答日時:
WM_PAINTの中からならこんな感じ(テストしてないので間違いあるかも)
HDCさえ取得できれば、FillRectで自由に書き込めます。
PAINTSTRUCT ps;
HDC hdc;
HBRUSH hbrush;
RECT rect;
case WM_PAINT:
hdc = BeginPaint(hwnd, &ps); /* hwnd はウィンドウハンドル */
hbrush = CreateSolidBrush(0x456789); /* COLORREF: 0x00BBGGRR */
rect.left = 0;
rect.top = 0;
rect.right = 10;
rect.bottom = 10;
FillRect(hdc, &rect, hbrush);
DeleteObject(hbrush);
EndPaint(hwnd, &ps);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
領域を塗りつぶしたい
-
エクセルで作った新しいウイン...
-
「アイテムは収集されました」...
-
グラフの交点の求め方(Excel)
-
検索の画面がでなくなってしま...
-
コントロールの書式設定で、“コ...
-
Sendkeysのタイミング
-
ダイアログボックスのボタンコ...
-
コンボボックス内の文字サイズ変更
-
18マスの左の方3×3のマス目を自...
-
[VB.net] DataGridViewの列ヘッ...
-
ExcelのBOOKが消えた!
-
ドロップダウンリストのフォン...
-
マインクラフト(pc版)で座標...
-
メッセージボックスを大きくす...
-
シーケンサー(PLC?)で制...
-
エクセルのコントロールツール...
-
VB.NET2005 TextBox 高さ(Heig...
-
DateTimePickerでに年月までし...
-
ピクセルの座標を取得するには
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コンテキスト依存とは?
-
画面がチカチカする
-
Rectangleで、リソースが解放さ...
-
SetWindowRgn()関数について。
-
コントロール内の文字の背景色
-
VBでFD、USBの有効・無効...
-
C 多角形を半透明に塗る方法
-
ハードコピーをプログラムから...
-
画面のちらつきについて
-
画像処理 ビットマップ ダブ...
-
些細な質問ですが、よろしくお...
-
Windowsプログラミング 画面描...
-
丸いボタンの表示でCPU100%
-
メモリデバイスコンテキストを...
-
GetDC()とCreateCompatibleDC()
-
ウィンドウに表示されないのは...
-
PrintScreenしたあとに画像を保...
-
ビットマップ(表示速度とサイズ)
-
ダイアログにビットマップを貼...
-
OpenGLでウィンドウハンドルの取得
おすすめ情報