亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? colors1.c

?? Programming Visual C++ 5th edition source code
?? C
字號:
/*----------------------------------------
   COLORS1.C -- Colors Using Scroll Bars
                (c) Charles Petzold, 1998
  ----------------------------------------*/

#include <windows.h>

LRESULT CALLBACK WndProc    (HWND, UINT, WPARAM, LPARAM) ;
LRESULT CALLBACK ScrollProc (HWND, UINT, WPARAM, LPARAM) ;

int     idFocus ;
WNDPROC OldScroll[3] ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
     static TCHAR szAppName[] = TEXT ("Colors1") ;
     HWND         hwnd ;
     MSG          msg ;
     WNDCLASS     wndclass ;
     
     wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
     wndclass.lpfnWndProc   = WndProc ;
     wndclass.cbClsExtra    = 0 ;
     wndclass.cbWndExtra    = 0 ;
     wndclass.hInstance     = hInstance ;
     wndclass.hIcon         = LoadIcon (NULL, IDI_APPLICATION) ;
     wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW) ;
     wndclass.hbrBackground = CreateSolidBrush (0) ;
     wndclass.lpszMenuName  = NULL ;
     wndclass.lpszClassName = szAppName ;
     
     if (!RegisterClass (&wndclass))
     {
          MessageBox (NULL, TEXT ("This program requires Windows NT!"),
                      szAppName, MB_ICONERROR) ;
          return 0 ;
     }
     
     hwnd = CreateWindow (szAppName, TEXT ("Color Scroll"),
                          WS_OVERLAPPEDWINDOW,
                          CW_USEDEFAULT, CW_USEDEFAULT,
                          CW_USEDEFAULT, CW_USEDEFAULT,
                          NULL, NULL, hInstance, NULL) ;
     
     ShowWindow (hwnd, iCmdShow) ;
     UpdateWindow (hwnd) ;
     
     while (GetMessage (&msg, NULL, 0, 0))
     {
          TranslateMessage (&msg) ;
          DispatchMessage  (&msg) ;
     }
     return msg.wParam ;
}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
     static COLORREF crPrim[3] = { RGB (255, 0, 0), RGB (0, 255, 0),
                                   RGB (0, 0, 255) } ;
     static HBRUSH  hBrush[3], hBrushStatic ;
     static HWND    hwndScroll[3], hwndLabel[3], hwndValue[3], hwndRect ;
     static int     color[3], cyChar ;
     static RECT    rcColor ;
     static TCHAR * szColorLabel[] = { TEXT ("Red"), TEXT ("Green"), 
                                       TEXT ("Blue") } ;
     HINSTANCE      hInstance ;
     int            i, cxClient, cyClient ;
     TCHAR          szBuffer[10] ;
     
     switch (message)
     {
     case WM_CREATE :
          hInstance = (HINSTANCE) GetWindowLong (hwnd, GWL_HINSTANCE) ;
          
               // Create the white-rectangle window against which the 
               // scroll bars will be positioned. The child window ID is 9.
          
          hwndRect = CreateWindow (TEXT ("static"), NULL,
                                   WS_CHILD | WS_VISIBLE | SS_WHITERECT,
                                   0, 0, 0, 0,
                                   hwnd, (HMENU) 9, hInstance, NULL) ;
          
          for (i = 0 ; i < 3 ; i++)
          {
                    // The three scroll bars have IDs 0, 1, and 2, with
                    // scroll bar ranges from 0 through 255.
               
               hwndScroll[i] = CreateWindow (TEXT ("scrollbar"), NULL,
                                             WS_CHILD | WS_VISIBLE | 
                                             WS_TABSTOP | SBS_VERT,
                                             0, 0, 0, 0, 
                                             hwnd, (HMENU) i, hInstance, NULL) ;
               
               SetScrollRange (hwndScroll[i], SB_CTL, 0, 255, FALSE) ;
               SetScrollPos   (hwndScroll[i], SB_CTL, 0, FALSE) ;
               
                    // The three color-name labels have IDs 3, 4, and 5, 
                    // and text strings "Red", "Green", and "Blue".
               
               hwndLabel [i] = CreateWindow (TEXT ("static"), szColorLabel[i],
                                             WS_CHILD | WS_VISIBLE | SS_CENTER,
                                             0, 0, 0, 0, 
                                             hwnd, (HMENU) (i + 3), 
                                             hInstance, NULL) ;
               
                    // The three color-value text fields have IDs 6, 7, 
                    // and 8, and initial text strings of "0".
               
               hwndValue [i] = CreateWindow (TEXT ("static"), TEXT ("0"),
                                             WS_CHILD | WS_VISIBLE | SS_CENTER,
                                             0, 0, 0, 0,
                                             hwnd, (HMENU) (i + 6), 
                                             hInstance, NULL) ;
               
               OldScroll[i] = (WNDPROC) SetWindowLong (hwndScroll[i], 
                                             GWL_WNDPROC, (LONG) ScrollProc) ;
               
               hBrush[i] = CreateSolidBrush (crPrim[i]) ;
          }
          
          hBrushStatic = CreateSolidBrush (
                              GetSysColor (COLOR_BTNHIGHLIGHT)) ;
          
          cyChar = HIWORD (GetDialogBaseUnits ()) ;
          return 0 ;
          
     case WM_SIZE :
          cxClient = LOWORD (lParam) ;
          cyClient = HIWORD (lParam) ;
          
          SetRect (&rcColor, cxClient / 2, 0, cxClient, cyClient) ;
          
          MoveWindow (hwndRect, 0, 0, cxClient / 2, cyClient, TRUE) ;
          
          for (i = 0 ; i < 3 ; i++)
          {
               MoveWindow (hwndScroll[i],
                           (2 * i + 1) * cxClient / 14, 2 * cyChar,
                           cxClient / 14, cyClient - 4 * cyChar, TRUE) ;
               
               MoveWindow (hwndLabel[i],
                           (4 * i + 1) * cxClient / 28, cyChar / 2,
                           cxClient / 7, cyChar, TRUE) ;
               
               MoveWindow (hwndValue[i],
                           (4 * i + 1) * cxClient / 28, 
                           cyClient - 3 * cyChar / 2,
                           cxClient / 7, cyChar, TRUE) ;
          }
          SetFocus (hwnd) ;
          return 0 ;
          
     case WM_SETFOCUS :
          SetFocus (hwndScroll[idFocus]) ;
          return 0 ;
          
     case WM_VSCROLL :
          i = GetWindowLong ((HWND) lParam, GWL_ID) ;
          
          switch (LOWORD (wParam))
          {
          case SB_PAGEDOWN :
               color[i] += 15 ;
                                             // fall through
          case SB_LINEDOWN :
               color[i] = min (255, color[i] + 1) ;
               break ;
               
          case SB_PAGEUP :
               color[i] -= 15 ;
                                             // fall through
          case SB_LINEUP :
               color[i] = max (0, color[i] - 1) ;
               break ;
               
          case SB_TOP :
               color[i] = 0 ;
               break ;
               
          case SB_BOTTOM :
               color[i] = 255 ;
               break ;
               
          case SB_THUMBPOSITION :
          case SB_THUMBTRACK :
               color[i] = HIWORD (wParam) ;
               break ;
               
          default :
               break ;
          }
          SetScrollPos  (hwndScroll[i], SB_CTL, color[i], TRUE) ;
          wsprintf (szBuffer, TEXT ("%i"), color[i]) ;
          SetWindowText (hwndValue[i], szBuffer) ;
          
          DeleteObject ((HBRUSH) 
               SetClassLong (hwnd, GCL_HBRBACKGROUND, (LONG) 
                    CreateSolidBrush (RGB (color[0], color[1], color[2])))) ;
          
          InvalidateRect (hwnd, &rcColor, TRUE) ;
          return 0 ;
          
     case WM_CTLCOLORSCROLLBAR :
          i = GetWindowLong ((HWND) lParam, GWL_ID) ;
          return (LRESULT) hBrush[i] ;
               
     case WM_CTLCOLORSTATIC :
          i = GetWindowLong ((HWND) lParam, GWL_ID) ;
               
          if (i >= 3 && i <= 8)    // static text controls
          {
               SetTextColor ((HDC) wParam, crPrim[i % 3]) ;
               SetBkColor ((HDC) wParam, GetSysColor (COLOR_BTNHIGHLIGHT));
               return (LRESULT) hBrushStatic ;
          }
          break ;
               
     case WM_SYSCOLORCHANGE :
          DeleteObject (hBrushStatic) ;
          hBrushStatic = CreateSolidBrush (GetSysColor (COLOR_BTNHIGHLIGHT)) ;
          return 0 ;
               
     case WM_DESTROY :
          DeleteObject ((HBRUSH)
               SetClassLong (hwnd, GCL_HBRBACKGROUND, (LONG) 
                    GetStockObject (WHITE_BRUSH))) ;
               
          for (i = 0 ; i < 3 ; i++)
               DeleteObject (hBrush[i]) ;
               
          DeleteObject (hBrushStatic) ;
          PostQuitMessage (0) ;
          return 0 ;
     }
     return DefWindowProc (hwnd, message, wParam, lParam) ;
}
     
LRESULT CALLBACK ScrollProc (HWND hwnd, UINT message, 
                             WPARAM wParam, LPARAM lParam)
{
     int id = GetWindowLong (hwnd, GWL_ID) ;
          
     switch (message)
     {
     case WM_KEYDOWN :
          if (wParam == VK_TAB)
               SetFocus (GetDlgItem (GetParent (hwnd), 
                    (id + (GetKeyState (VK_SHIFT) < 0 ? 2 : 1)) % 3)) ;
          break ;
               
     case WM_SETFOCUS :
          idFocus = id ;
          break ;
     }
     return CallWindowProc (OldScroll[id], hwnd, message, wParam, lParam) ;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产视频在线观看一区二区三区| 色一区在线观看| 亚洲超丰满肉感bbw| 亚洲视频在线观看一区| 国产精品九色蝌蚪自拍| 国产精品二区一区二区aⅴ污介绍| www国产精品av| 久久久夜色精品亚洲| xvideos.蜜桃一区二区| 久久综合久久99| 欧美激情在线免费观看| 国产精品国产三级国产专播品爱网| 久久久久久久久免费| 久久久五月婷婷| 亚洲国产精品成人综合| 成人免费在线视频观看| 亚洲亚洲精品在线观看| 视频在线观看一区二区三区| 另类成人小视频在线| 高清beeg欧美| 日本福利一区二区| 欧美精选一区二区| 精品精品欲导航| 国产亚洲婷婷免费| 亚洲视频你懂的| 亚洲国产一区二区视频| 日韩你懂的在线播放| 亚洲国产视频在线| 91国产精品成人| 亚洲免费视频成人| 欧美在线你懂的| 亚洲第一在线综合网站| 91看片淫黄大片一级| 精品处破学生在线二十三| 日本伊人色综合网| 日韩一区国产二区欧美三区| 日韩在线卡一卡二| 欧美一区二区三区免费观看视频 | 日本美女一区二区| 欧美蜜桃一区二区三区| 水蜜桃久久夜色精品一区的特点| 欧美日韩美女一区二区| 日韩电影免费在线看| 日韩精品综合一本久道在线视频| 日韩国产在线观看| 日韩女优av电影在线观看| 久久er99热精品一区二区| 亚洲精品在线三区| 成人禁用看黄a在线| 亚洲视频资源在线| 555夜色666亚洲国产免| 久久国产精品第一页| 久久蜜桃av一区二区天堂| 成人做爰69片免费看网站| 国产精品麻豆网站| 欧美丝袜自拍制服另类| 久久成人av少妇免费| 中文字幕欧美三区| 欧美日韩你懂得| 国产一区高清在线| 亚洲自拍偷拍麻豆| 欧美一级午夜免费电影| 国产91在线|亚洲| 亚洲精品国产成人久久av盗摄| 欧美日韩国产成人在线免费| 国产一二精品视频| 一区二区三区国产| 精品三级在线看| 91丨porny丨蝌蚪视频| 日本成人在线不卡视频| 国产精品另类一区| 欧美美女bb生活片| 成人精品一区二区三区中文字幕| 亚洲一区精品在线| 国产亚洲精品bt天堂精选| 色成年激情久久综合| 视频一区二区不卡| 亚洲欧洲精品成人久久奇米网| 5月丁香婷婷综合| 丰满放荡岳乱妇91ww| 奇米色一区二区三区四区| 中文字幕一区二区在线观看| 7777精品伊人久久久大香线蕉超级流畅| 国产精品一区一区三区| 亚洲一区二区三区不卡国产欧美| 国产拍揄自揄精品视频麻豆| 欧美精品第1页| 色先锋aa成人| 99国产精品国产精品久久| 精品一区二区三区视频| 爽好久久久欧美精品| 亚洲激情自拍偷拍| 综合久久久久久| 久久影院午夜论| 欧美一区2区视频在线观看| 在线精品视频免费观看| 成人美女视频在线观看| 国产精品自在在线| 精品一区二区免费| 三级亚洲高清视频| 亚洲午夜国产一区99re久久| 成人免费在线视频观看| 国产欧美精品在线观看| 色综合久久天天综合网| 日本一区二区不卡视频| 欧美影院一区二区| 奇米888四色在线精品| 久久婷婷色综合| 在线观看视频一区| 激情久久五月天| 18成人在线视频| 日韩你懂的电影在线观看| 99精品久久99久久久久| 日韩成人一级大片| 中文字幕一区二区在线播放| 91精品黄色片免费大全| 99久久久久久99| 激情av综合网| 亚洲一区二区3| 国产三级精品三级| 欧美老女人第四色| 91免费国产视频网站| 麻豆精品国产91久久久久久| 国产精品久久久久影院| 日韩免费观看高清完整版 | 日本午夜精品一区二区三区电影| 欧美激情中文不卡| 日韩欧美中文一区二区| 色综合视频在线观看| 国产不卡视频在线观看| 美女脱光内衣内裤视频久久影院| 亚洲欧美一区二区三区久本道91 | 精品视频一区 二区 三区| 国产成人精品免费| 精品亚洲国产成人av制服丝袜 | 26uuu国产电影一区二区| 9191国产精品| 日本丰满少妇一区二区三区| 成人97人人超碰人人99| 国产精品白丝av| 国产一区二区电影| 色妞www精品视频| 91麻豆swag| 99久精品国产| 成人av在线播放网站| 亚洲另类中文字| 亚洲欧美综合色| 午夜精品一区在线观看| 国产自产高清不卡| 色噜噜久久综合| 亚洲欧美日韩久久| 亚洲欧洲日韩av| 亚洲色图制服诱惑| 亚洲黄色av一区| 亚洲综合图片区| 午夜久久久久久电影| 丝袜诱惑制服诱惑色一区在线观看| 亚洲一级二级三级| 亚洲成人黄色影院| 日韩福利视频网| 老鸭窝一区二区久久精品| 加勒比av一区二区| 国产成人免费在线观看不卡| 成人免费看的视频| 91天堂素人约啪| 欧美在线免费观看视频| 91精品国产综合久久久久久久久久| 538在线一区二区精品国产| 亚洲青青青在线视频| 亚洲福中文字幕伊人影院| 奇米777欧美一区二区| 国产精品夜夜爽| 91视频www| 3d动漫精品啪啪一区二区竹菊| 精品国产一区二区精华| 国产精品天干天干在观线| 亚洲精品福利视频网站| 日本网站在线观看一区二区三区| 黄色日韩网站视频| 97se狠狠狠综合亚洲狠狠| 欧美男男青年gay1069videost| 久久久久久电影| 亚洲风情在线资源站| 国产高清不卡二三区| 在线影视一区二区三区| 久久亚洲捆绑美女| 亚洲综合一区二区三区| 久久精品国内一区二区三区| a4yy欧美一区二区三区| 欧美一区国产二区| 欧美国产日韩精品免费观看| 亚洲一区二区三区四区在线| 激情偷乱视频一区二区三区| 91久久线看在观草草青青| 精品久久国产字幕高潮| 亚洲伊人色欲综合网| 国产成人精品一区二| 欧美一级二级三级乱码| 亚洲天天做日日做天天谢日日欢| 激情图区综合网|