CreateWindowで作成したウィンドウの上 1/10 程度にのみに背景をつけたいのですが方法がわからず悩んでいます。
(イメージとしては携帯で出されるポップアップの上 1/5 程度が着色されている感じです)
hbrBackgroundではウィンドウ全体が着色されますし、
SetBkColorではテキストの背景しか着色されません。
MFCは使用していません。
WIN32APIで作成しています。
どなたか教えていただけませんか?
> CreateWindowで作成したウィンドウの上 1/10 程度にのみに背景をつけたいのですが方法がわからず悩んでいます。
WM_ERASEBACKGROUNDでHDC受け取れるので、
そのDCに対して描画してください。
単色ならFillRect()辺りで塗りつぶせばよいかと。
DefWindowProc()呼んだ後に自前で描画して、0以外を返却…かな。
瀬戸っぷさん回答ありがとうございます。
FillRect()←これですべて解決しました。
HDCを受け取り、
RECTで描画する範囲を指定して
HBRUSHで描画する色を取得し
期待していた背景を描画することができました。
おかげで解決することができました。
ありがとうございました。
瀬戸っぷさん回答ありがとうございます。
FillRect()←これですべて解決しました。
HDCを受け取り、
RECTで描画する範囲を指定して
HBRUSHで描画する色を取得し
期待していた背景を描画することができました。
おかげで解決することができました。
ありがとうございました。
ツイート | ![]() |