VC 设置Edit Box不能输入时,如何设置Edit Box的外观

来源:百度知道 编辑:UC知道 时间:2024/05/16 14:31:13
我用GetDlgItem(IDC_EDIT1)->EnableWindow(FALSE) 使 IDC_EDIT1不能输入,但是IDC_EDIT1的背景色却变成和对话框一个颜色了,请问大家如何编辑可以使图中上面的Edit Box外观和下面的一样,谢谢。

HBRUSH CDialogEditDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

if (pWnd->GetDlgCtrlID()==IDC_EDIT1)
{
// pDC->SetBkMode(TRANSPARENT);
//设置第一行的背景色
pDC->SetBkColor(RGB(200,200,200));
//设置其他行的背景色
m_bkBrush = ::CreateSolidBrush(RGB(200,200,100));

return m_bkBrush;
}
return hbr;
}

有两个方法可以试一试。
1。owner draw.自己描画,想让它是什么样都行。
还有一个简单方法。
2。在PreTranslateMessage(pMsg)里截住IDC_EDIT1的任何事件。