1414
Конференция C SoobCha
письмо # 1415
|
1416 |
|
Привет Коллеги !!!Вопрос нежданно появился : Вопрос элементарный, но почему то глючит ! Есть проект Диалог-Базет. просто форма. На ней кнопки, едитбокс в кач-ве списка, статик-элементы. Захотел поиграться с раскрашиванием. Вроде есть прогресс: // раскраска по усмотрению m_Brush_user[1] - розовая кисть, m_Brush_user[0]-черная кисть HBRUSH CHCopyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { switch (nCtlColor) { // едит-бокс - как список case CTLCOLOR_EDIT: pDC->SetTextColor(RGB(0, 255, 0)); pDC->SetBkColor(RGB(0, 0, 0)); return (HBRUSH)(m_Brush_user[0]->GetSafeHandle()); break; case CTLCOLOR_BTN: /* для кнопок */ pDC->SetTextColor(RGB(5, 55, 55)); pDC->SetBkColor(RGB(255, 190, 190)); return (HBRUSH)(m_Brush_user[0]->GetSafeHandle()); break; case CTLCOLOR_DLG: /* для окна диалога (??) */ pDC->SetTextColor(RGB(0, 255, 0)); pDC->SetBkColor(RGB(255, 190, 190)); return (HBRUSH)(m_Brush_user[1]->GetSafeHandle()); break; case CTLCOLOR_STATIC: pDC->SetBkMode(TRANSPARENT); /* для статиков, чекбоксов, радиобатонов */ pDC->SetTextColor(RGB(0, 50, 140)); pDC->SetBkColor(RGB(255, 190, 190)); return (HBRUSH)(m_Brush_user[1]->GetSafeHandle()); break; default: return (HBRUSH)CDialog::OnCtlColor(pDC, pWnd, nCtlColor); } return (HBRUSH)CDialog::OnCtlColor(pDC, pWnd, nCtlColor); } Для контролов СТАТИК (чекбокс, радиобатон иже с ним) все окей ! Красится как просят! Для контролов - прекрасно красится. Для КНОПОК не хочет !!!!! Все же вроде правильно ! ? Уже пробовал в case CTLCOLOR_BTN вставить проверку конкретной кнопки по ее ID - тоже не пашет. В чем бока ?? В MSDN-е ничего интересного про кнопки не увидел.... -- С уважением, Вадим SafeGuard Lagosha<Анти-МЯУ>amk.lg.ua |
1414
|
1416 |
|
|
|
|