3
私は黒でウィンドウを持ってWTL(私はMFCと同じ問題を持っていると思います推測している)背景色
を使用してCStaticなの背景色を設定することで問題を抱えています背景には、CStaticから派生したコントロールがあります。私はWM_CTLCOLORSTATICメッセージで色を設定しています。私は基本的に動作しますが、テキストを持つコントロールの部分は白く見えます。ここで
は、コールバックのコードです:
LRESULT CReportResults::OnCtrColorStatic(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
{
if ((HWND)lParam == m_wndLoadingLabel.m_hWnd)
{
HDC hDC = (HDC)wParam;
SetBkColor(hDC, APP_COLOR_BACKGROUND);
SetTextColor(hDC, APP_COLOR_TEXT);
}
return 0;
}
そして、ここではそれが画面上のように見える終わるものです。コントロール自体はその中のテキストよりも大きいですが、コントロールの残りの部分を黒い背景で描画する方法がわかりません。背景色を黒に設定するだけでは、テキストが表示される領域に影響します。私が間違って何をしているのかについてのアイデアはありますか?
CtrlColorハンドラでゼロを返すべきではありません。カスタムブラシを返さない場合は、デフォルトのウィンドウプロシージャを呼び出して、それが返す値を返す必要があります。 –
それを解決するためによくできました。 –