バックグラウンドカラー・・・・・デバイスコンテキストの背景色
TextOut()関数などで文字を描画したときの背景色など。
デフォルトは白だが、色を変更するにはSetBkColor()関数を使う。
また、背景を透過色にする場合は、SetBkMode()関数を使う。
最大バッチ数・・・・・・・・・・グラフィカルな処理をする関係のAPI関数の呼び出しは
高速化のために、ある程度まとめて処理を行う。
これを「バッチ」というが、このときの最大まとめて行える数を
「最大バッチ数」という。
ただし、Boolean値を返す関数に限られる。
(当サイトの場合、Boolean値を返す関数もLong型として定義している)
例えば、SetPixelV()関数などである。
SetPixelV()関数はピクセルの描画の成否だけを戻す。
この最大バッチ数はGdiGetBatchLimit()関数で取得できる。
無効化・・・・・・・・・・・・・AとBのウィンドウがあり、BがAの一部に重なっているとする。
ここでBを移動させると、Bの下に隠れていたAの
一部を再描画する必要がある。
つまり、Aの一部はかつて描画した効果が失われる事になる。
これが「無効化」である。
有効化・・・・・・・・・・・・・無効化領域を再描画すること。
クライアント領域の強制再描画・・クライアント領域を再描画する関数としては
UpdateWindow()関数かRedrawWindow()関数を使うのが一般的だ。
しかしこれらはWindowsが更新の必要がないと判断すると
再描画しないことがある。
それでも無理やりに再描画したいときはInvalidateRgn()関数を使う。
Call InvalidateRgn(hWnd, 0, 1)
とすると無理やりにでも再描画してくれる。
| 関数名 | 機能 | Sample |
| 描画 | ||
| AlphaBlend | ビットマップをアルファ値に基づいてコピーする | なし |
| BeginPaint | ウィンドウの再描画を準備する | あり |
| BitBlt | 指定のデバイスコンテキストへビットマップをコピーする | なし |
| DrawAnimatedRects | アイコンを開くとき・最大化時・アイコン化時にワイヤーフレーム矩形を描画する | なし |
| DrawCaption | 指定のウィンドウのキャプションを指定のデバイスコンテキストに描画する | なし |
| DrawEdge | 矩形に3D効果を与える | なし |
| DrawFocusRect | 指定の矩形の周囲にフォーカスを示す点線を描画する | なし |
| DrawFrameControl | コントロールを3D表示する | なし |
| DrawState | イメージを加工して表示する | なし |
| DrawStateProc | DrawState()関数のコールバック関数 | なし |
| EndPaint | BeginPaint()関数で開始した描画を終了する | なし |
| ExcludeUpdateRgn | 更新領域の再描画を抑制する | なし |
| ExtFloodFill | 現在選択されているブラシで一定の範囲内を塗りつぶす | なし |
| FillRect | ブラシで矩形領域を塗りつぶす | なし |
| FillRgn | 指定のブラシで領域を塗りつぶす | なし |
| FrameRect | 矩形の周囲に指定のブラシで境界線を書く | なし |
| FrameRgn | 指定の領域の周囲に指定のブラシで境界線を書く | なし |
| GdiFlush | GDI描画関数のバッチ処理を実行する | なし |
| GdiGetBatchLimit | GDI描画関数の最大バッチ数を取得する | なし |
| GdiSetBatchLimit | GDI描画関数の最大バッチ数を設定する | なし |
| GetBkMode | 現在のバックグラウンドの塗りつぶしモードを得る | なし |
| GetPixel | ピクセルのカラー値を取得する | なし |
| GetPolyfillMode | 多角形の塗りつぶしモードを取得する | なし |
| GetStretchBltMode | 現在のストレッチングモードを取得する | なし |
| GetUpdateRect | 更新領域の矩形座標を取得する | なし |
| GetUpdateRgn | 更新領域の座標を取得する | なし |
| GradientFill | 矩形、または三角形の内部をグラデーションで塗りつぶす | あり |
| InvalidateRect | クライアント領域の一部を無効領域とする | なし |
| InvalidateRgn | 指定の領域を無効領域に追加する | なし |
| LockWindowUpdate | 再描画しようとするウィンドウをロックする | なし |
| PaintDesktop | 指定の領域をデスクトップと同じパターン・壁紙で塗りつぶす | あり |
| PaintRgn | 現在のブラシで領域を塗りつぶす | なし |
| PatBlt | 指定の範囲内を現在のパターンブラシで塗りつぶす | なし |
| RedrawWindow | 指定の条件でクライアント領域内の指定の範囲を再描画する | なし |
| SetBkMode | バックグラウンドの塗りつぶしモード設定する | あり |
| SetPixelV | 指定の位置のピクセルを指定のカラーに最も近いカラー値に設定する | なし |
| SetPolyFillMode | 多角形塗りつぶしモードを設定する | なし |
| SetStretchBltMode | ビットマップのストレッチングモードを設定する | なし |
| StretchBlt | ビットマップを拡大・縮小してコピーする | なし |
| StretchDIBits | DIBを拡大・縮小してコピーする | なし |
| TransparentBlt | 透明色を指定してビットマップをコピーする | なし |
| UpdateWindow | クライアント領域を強制的に再描画(更新)する | なし |
| ValidateRect | 無効領域から指定の矩形範囲を有効化する | なし |
| ValidateRgn | 更新領域内の領域の一部を有効化する | なし |