home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Programmer's Library 1.3 / Microsoft-Programers-Library-v1.3.iso / sampcode / win_lrn / text / textcol.c < prev    next >
C/C++ Source or Header  |  1988-08-10  |  2KB  |  71 lines

  1. /*
  2.  *  SetTextColor
  3.  *  TEXTCOL.C,
  4.  *
  5.  *  This program demonstrates the use of the function SetTextColor.
  6.  *  SetTextColor changes the color of future text output.
  7.  *  This program gets a DC and outputs black text on a white backround.
  8.  *  Next the text backround is changed to black.  The text is changed to
  9.  *  white using the function SetTextColor.  Finally, the white text is
  10.  *  output to the screen.
  11.  *
  12.  */
  13.  
  14. #include <windows.h>
  15. #include <string.h>
  16.  
  17. char    *szMessage = "This is the text color before invoking SetTextColor.";
  18. char    *szWhite = "The text color is now white.";
  19.  
  20. int     PASCAL WinMain (hInstance, hPrevInstance, lpszCmdLine, cmdShow)
  21. HANDLE    hInstance, hPrevInstance;
  22. LPSTR     lpszCmdLine;
  23. int       cmdShow;
  24.   {
  25.   HWND       hWnd;
  26.   HDC        hDC;
  27.   DWORD      rgbcolor;
  28.   DWORD      dwblack = RGB (0x00, 0x00, 0x00);
  29.   DWORD      dwwhite = RGB (0xff, 0xff, 0xff);
  30.   WNDCLASS   Class;
  31.  
  32.   Class.hCursor        = LoadCursor (NULL, IDC_ARROW);
  33.   Class.lpszMenuName   = (LPSTR)NULL;
  34.   Class.lpszClassName  = (LPSTR)"Window";
  35.   Class.hbrBackground  = (HBRUSH)GetStockObject (BLACK_BRUSH);
  36.   Class.hInstance      = hInstance;
  37.   Class.style          = CS_HREDRAW | CS_VREDRAW;
  38.   Class.lpfnWndProc    = DefWindowProc;
  39.  
  40.   if (!RegisterClass ( (LPWNDCLASS)&Class))
  41.     return FALSE;
  42.  
  43.   hWnd = CreateWindow ( (LPSTR)"Window",
  44.                       (LPSTR)"SetTextColor",
  45.                       WS_TILEDWINDOW,
  46.                       20, 20, 400, 200,
  47.                       (HWND)NULL,        /* no parent */
  48.                       (HMENU)NULL,       /* use class menu */
  49.                       (HANDLE)hInstance, /* handle to window instance */
  50.                       (LPSTR)NULL);      /* no params to pass on */
  51.  
  52.   ShowWindow (hWnd, cmdShow);
  53.   UpdateWindow (hWnd);
  54.  
  55.   hDC = GetDC (hWnd);
  56.  
  57.   TextOut (hDC, 0, 0, (LPSTR)szMessage, strlen (szMessage));
  58.  
  59.   SetBkColor (hDC, dwblack);
  60.  
  61.   rgbcolor = SetTextColor (hDC, dwwhite);
  62.  
  63.   TextOut (hDC, 0, 15, (LPSTR)szWhite, strlen (szWhite));
  64.   ReleaseDC (hWnd, hDC);
  65.  
  66.   MessageBox (GetFocus (), (LPSTR)"Program Finished",
  67.       (LPSTR)"SetTextColor", MB_OK);
  68.  
  69.   return 0;
  70.   }
  71.