私は win32 でボーダー コントロールを実装しており、そのボーダーにさまざまなスタイルを実装しています。境界線を描画するために単純な MoveTo() および LineTo() コマンドを使用しています。私の問題は、境界線に新しいスタイルを選択すると、現在描画されている境界線の上に描画が開始されることです。新しいキャンバスを作成するには、ウィンドウを更新/再描画する必要があることを理解しています。この目的を達成するために、今のところ InvalidateRect() を使用しています。しかし、ボーダー コントロール ウィンドウに (子ウィンドウとして) 関連付けられた他のウィンドウがある場合、子ウィンドウにどのような影響がありますか? このウィンドウのすべてを再描画する必要がありますか?
第二に、とにかく GDI 領域 (HRGN) 内に線を引くことはできますか? これまでのところ、私が遭遇したのは、その HRGN を塗りつぶしの色で塗りつぶす方法だけです。とにかく、その特定の HRGN オブジェクトに関連付けられた HDC を取得できますか??