MFC コンボボックスは、実に奇抜な設計です。
「ドロップリスト」タイプのコンボボックスを使用しています。
HBRUSH CValueInputDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hBrush = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
if (nCtlColor == CTLCOLOR_STATIC || nCtlColor == CTLCOLOR_EDIT)
{
pDC->SetTextColor(RGB(255, 255, 255));
pDC->SetBkMode(TRANSPARENT);
hBrush = (HBRUSH)GetStockObject(NULL_BRUSH);
}
return hBrush;
}
私がしているのは、CStatic と CEdit の色をすべて白にすることです。
しかし、コンボボックスの編集も白に変更していることに気付きました。
それは私が望んでいないことです。
それは私が望んでいないことです。そして私はそれを止めることはできません
pWnd->GetDlgCtrlID() == IDC_COMBO
それはとても不親切です。このコンボボックス。