Измените цвет моего диалогового окна, когда я щелкаю мышью
Я нашел в интернете, чтобы изменить цвет:
Add OnCtlColor and write this code //hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); //Commet it and add hbr = m_brush;
да, но он использовал сообщение, но у меня уже есть мое сообщение:
void CMFCApplication7Dlg::OnLButtonDown(UINT nFlags, CPoint point) {
поэтому я не знаю, что я могу написать внутри события OnLButtonDown
Что я уже пробовал:
Я искал в интернете, но там нет никакого способа
Member 14594285
Я думаю, что должен написать нечто подобное:
BOOL CMFCApplication7Dlg::OnEraseBkgnd(CDC* pDC)
{
if (afx_msg == WM_MOUSEMOVE)
{
Crect тогда прямоугольник;
GetClientRect(&rect);
CBrush myBrush(RGB(255, 255, 255)); // цвет фона диалога
CBrush *pOld = pDC->SelectObject(&myBrush);
BOOL bRes = pDC->PatBlt(0, 0, rect.Width(), rect.Высота(), PATCOPY);
pDC->SelectObject(pOld); // восстановление старой кисти
возвращение Брес;
возврат CDialogEx::OnEraseBkgnd(pDC);
}
Вы не могли бы мне помочь?
Member 14594285
я пытался :
BOOL CMFCApplication7Dlg::OnEraseBkgnd(CDC* pDC)
{
MSG* pMsg = новый MSG;
// TODO: добавьте сюда свой код обработчика сообщений и/или вызовите default
if (pMsg->message == WM_LBUTTONDOWN)
{
Crect тогда прямоугольник;
GetClientRect(&rect);
CBrush myBrush(RGB(255, 255, 255)); // цвет фона диалога
CBrush *pOld = pDC->SelectObject(&myBrush);
BOOL bRes = pDC->PatBlt(0, 0, rect.Width(), rect.Высота(), PATCOPY);
pDC->SelectObject(pOld); // восстановление старой кисти
возвращение Брес;
возврат CDialogEx::OnEraseBkgnd(pDC);
}
}
но это не работает..диалог открыть белый, прежде чем я нажму кнопку мыши