« タミフル3日目 | トップページ | CPUMonitorMini Ver.0.03 »

2008.01.19

FillSolidRect()

CDC::FillSolidRect() は、CreatePen(PS_SOLID, ...) & FillRect() より高速とされている。

ので、いつも使ってたのだが、なぜか突然、なぜ高速なんだ?と疑問に思ってしまったので、MFC のソースを探してみた。

ら、なんと、ExtTextOut() でのテキストを描画するときの背景塗りつぶしを使って、空テキストを描画していることが判明。

Win32 SDK レベルのアプリで書くなら、

void FillSolidRect(HDC hDC, COLORREF clr, RECT *pRect)
{
  SetBkColor(hDC, clr);
  ExtTextOut(hDC, 0, 0, ETO_OPAQUE, pRect, NULL, 0, NULL);
}

こんな感じだね。

Windows Mobile でも高速なのだろうか?

そいえば、Android コンテスト始まってるのに、Windows Mobile で遊んでるな。。。^^;

(←フリーソフトを作るモチベーションアップのために、ぜひ。)

|

« タミフル3日目 | トップページ | CPUMonitorMini Ver.0.03 »

「プログラミング」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/20208/17755088

この記事へのトラックバック一覧です: FillSolidRect():

« タミフル3日目 | トップページ | CPUMonitorMini Ver.0.03 »