title: Set static text color Win32
body: <p>I am making a dll that controls a dialogue box.  I like to get a certain area to have red text.  This code does compile, but the effect is not seen.  Here is the area where the dialogProc is done:</p>
  
  <pre><code>LRESULT CALLBACK DialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
  {
      switch(message)
      {
      case WM_INITDIALOG:     
          CheckDlgButton(hDlg, IDC_CHECK, FALSE);
          EnableWindow(GetDlgItem(hDlg, IDOK), FALSE);
          return TRUE;
  
      case WM_COMMAND:
          switch (LOWORD(wParam))
          {
          case IDC_CHECK:
              if (IsDlgButtonChecked(hDlg, IDC_CHECK))
              {
                  EnableWindow(GetDlgItem(hDlg, IDOK), TRUE);
                  EnableWindow(GetDlgItem(hDlg, IDCANCEL), FALSE);
              }
              else
              {
                  EnableWindow(GetDlgItem(hDlg, IDOK), FALSE);
                  EnableWindow(GetDlgItem(hDlg, IDCANCEL), TRUE);
              }
              break;
          case IDOK:
              {           
                  EndDialog(hDlg, TRUE);
                  return FALSE;
              }
          case IDCANCEL:
              {               
                  EndDialog(hDlg, FALSE);
                  return FALSE;
              }
          case WM_CTLCOLORSTATIC:
              // Set the colour of the text for our URL
              if ((HWND)lParam == GetDlgItem(hDlg,IDC_WARNING)) 
              {
                  // we're about to draw the static
                  // set the text colour in (HDC)lParam
                  SetBkMode((HDC)wParam,TRANSPARENT);
                  SetTextColor((HDC)wParam, RGB(255,0,0));
                  return (BOOL)CreateSolidBrush (GetSysColor(COLOR_MENU));
              }
      return TRUE;
          }
      }
      return FALSE;
  }
  </code></pre>