На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual C++ / MFC / WTL (далее Раздела)
1) На Раздел распространяются все Правила Форума.
2) Перед тем, как создать новый топик, убедитесь, что Вы читали Правила создания тем в Разделе.
3) Вопросы, не связанные с программированием (настройки MS Visual Studio, книги, библиотеки и т.д.),
обсуждаются в разделе C/C++: Прочее
4) Вопросы разработки .NET (Windows Form, C++/CLI и т.п.) приложений на Visual C++/C# обсуждаются в разделе .NET.
5) Нарушение Правил может повлечь наказание со стороны модераторов.

Полезные ссылки:
user posted image FAQ Раздела user posted image Обновления для FAQ Раздела user posted image Поиск по Разделу user posted image MSDN Library Online
Модераторы: ElcnU
  
> Как поменять цвет в CStatic?
    Есть компонент IDC_STATIC1, которому соответствует переменная m_IDC_STATIC1 типа CStatic. Как изменить цвет текста на этом компоненте--например, чтобы он стал красным (RGB(255,0,0))?

    Я создал класс CMyStatic, производный от класса CStatic, и в нём переопределил метод OnPaint:

    ExpandedWrap disabled
      CMyStatic::OnPaint
      {
          CPaintDC  dc(this);
          CRect  rc;
          GetClientRect(rc);
          CString str;
          this->GetWindowText(str);
          dc.SetTextColor(RGB(255,0,0));
          dc.DrawText(str,&rc,DT_LEFT);
      }


    Но почему-то это у меня не работает.
    Как сделать так, чтобы это заработало--то есть чтобы цвет текста в m_IDC_STATIC1 изменился?
      SetTextColor работает только для TextOut(HDC...). Для DrawText наверное надо делать CreatePen, SelectObject и т.д
        Цитата erslgoeirjh @
        Как сделать так, чтобы это заработало--то есть чтобы цвет текста в m_IDC_STATIC1 изменился?

        "SetTextColor" можно делать в обработчике сообщения WM_CTLCOLORSTATIC, которое получает
        парент контрола:
        MSDN, WM_CTLCOLORSTATIC
        Аналогично можно красить и другие контролы.
        Только сообщения другие.
        Возможны проблемы - задницы из Микрософта частично (у некоторых контролов) прекратили этот сервис.
        Сообщение отредактировано: ЫукпШ -
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0198 ]   [ 17 queries used ]   [ Generated: 16.04.24, 16:05 GMT ]