青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

coreBugZJ

此 blog 已棄。

對話框,光標,字符串,位圖——Windows編程上機作業之三

 

1.光標

    通過菜單選擇使用ARROWWAIT和一個自定義光標。

2.位圖

     設計五個位圖。

3.對話框

    設計一個模式對話框,復選五個位圖的顯示。

    設計一個無模式對話框,單選五個位圖中的一個進行顯示。

    設計一個打開文件通用對話框,通過消息框顯示獲取的文件名。

4.字符串

    在客戶區和標題欄顯示的文字采用字符串資源定義的方法。所顯示的文字信息不在程序中出現。

5.中英文菜單切換

    將菜單項的顯示文字定義為字符串資源或通過菜單整體切換

 














resource.h
 1//{{NO_DEPENDENCIES}}
 2// Microsoft Visual C++ generated include file.
 3// Used by WinZJ.rc
 4//
 5#define IDI_WINZJ                       101
 6#define IDC_WINZJ                       102
 7#define IDA_WINZJ                       103
 8#define IDM_WINZJ_CH                    104
 9#define IDM_WINZJ_EN                    105
10#define IDS_APPNAME_CH                  106
11#define IDS_APPNAME_EN                  107
12#define IDS_WNDCLASSNAME                108
13#define IDS_CURSOR_PREFIX_CH            109
14#define IDS_CURSOR_PREFIX_EN            110
15#define IDS_CURSOR_ARROW                111
16#define IDS_CURSOR_WAIT                 112
17#define IDS_CURSOR_USER_CH              113
18#define IDS_CURSOR_USER_EN              114
19#define IDD_CHECK                       115
20#define IDB_A                           116
21#define IDB_B                           117
22#define IDB_C                           118
23#define IDB_D                           119
24#define IDB_E                           120
25#define IDD_RADIO                       121
26#define IDC_CHECK1                      1001
27#define IDC_CHECK2                      1002
28#define IDC_CHECK3                      1003
29#define IDC_CHECK4                      1004
30#define IDC_CHECK5                      1005
31#define IDC_RADIO1                      1006
32#define IDC_RADIO2                      1007
33#define IDC_RADIO3                      1008
34#define IDC_RADIO4                      1009
35#define IDC_RADIO5                      1010
36#define IDM_EXIT                        40001
37#define IDM_MODAL                       40002
38#define IDM_MODALLESS                   40003
39#define IDM_FILE                        40004
40#define IDM_ARROW                       40005
41#define IDM_WAIT                        40006
42#define IDM_USER                        40007
43#define IDM_CHINESE                     40008
44#define IDM_ENGLISH                     40009
45#define IDM_INFO                        40010
46
47// Next default values for new objects
48// 
49#ifdef APSTUDIO_INVOKED
50#ifndef APSTUDIO_READONLY_SYMBOLS
51#define _APS_NEXT_RESOURCE_VALUE        122
52#define _APS_NEXT_COMMAND_VALUE         40011
53#define _APS_NEXT_CONTROL_VALUE         1011
54#define _APS_NEXT_SYMED_VALUE           101
55#endif
56#endif
57


WinZJ.rc
  1// Microsoft Visual C++ generated resource script.
  2//
  3#include "resource.h"
  4
  5#define APSTUDIO_READONLY_SYMBOLS
  6/////////////////////////////////////////////////////////////////////////////
  7//
  8// Generated from the TEXTINCLUDE 2 resource.
  9//
 10#include "afxres.h"
 11
 12/////////////////////////////////////////////////////////////////////////////
 13#undef APSTUDIO_READONLY_SYMBOLS
 14
 15/////////////////////////////////////////////////////////////////////////////
 16// Chinese (Simplified, PRC) resources
 17
 18#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
 19LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
 20
 21#ifdef APSTUDIO_INVOKED
 22/////////////////////////////////////////////////////////////////////////////
 23//
 24// TEXTINCLUDE
 25//
 26
 271 TEXTINCLUDE 
 28BEGIN
 29    "resource.h\0"
 30END
 31
 322 TEXTINCLUDE 
 33BEGIN
 34    "#include ""afxres.h""\r\n"
 35    "\0"
 36END
 37
 383 TEXTINCLUDE 
 39BEGIN
 40    "\r\n"
 41    "\0"
 42END
 43
 44#endif    // APSTUDIO_INVOKED
 45
 46
 47/////////////////////////////////////////////////////////////////////////////
 48//
 49// Icon
 50//
 51
 52// Icon with lowest ID value placed first to ensure application icon
 53// remains consistent on all systems.
 54IDI_WINZJ               ICON                    "WinZJ.ico"
 55
 56/////////////////////////////////////////////////////////////////////////////
 57//
 58// Menu
 59//
 60
 61IDM_WINZJ_CH MENU
 62BEGIN
 63    POPUP "文件(&F)"
 64    BEGIN
 65        MENUITEM "退出(&X)",                      IDM_EXIT
 66    END
 67    POPUP "對話框(&O)"
 68    BEGIN
 69        MENUITEM "打開模式對話框(&M)\tCtrl+A",      IDM_MODAL
 70        MENUITEM "打開無模式對話框(&L)\tCtrl+B",     IDM_MODALLESS
 71        MENUITEM "打開文件對話框(&F)\tCtrl+C",      IDM_FILE
 72    END
 73    POPUP "光標類型(&C)"
 74    BEGIN
 75        MENUITEM "光標&1(ARROW)\tCtrl+1",         IDM_ARROW
 76        MENUITEM "光標&2(WAIT)\tCtrl+2",          IDM_WAIT
 77        MENUITEM "光標&3(User)\tCtrl+3",          IDM_USER
 78    END
 79    POPUP "語言(&L)"
 80    BEGIN
 81        MENUITEM "中文(&C)\tCtrl+Shift+C",        IDM_CHINESE
 82        MENUITEM "&English\tCtrl+Shift+D",      IDM_ENGLISH
 83    END
 84    POPUP "關于(&A)"
 85    BEGIN
 86        MENUITEM "程序信息(&I)\tF1",                IDM_INFO
 87    END
 88END
 89
 90
 91/////////////////////////////////////////////////////////////////////////////
 92//
 93// Cursor
 94//
 95
 96IDC_WINZJ               CURSOR                  "WinZJ.cur"
 97
 98/////////////////////////////////////////////////////////////////////////////
 99//
100// Accelerator
101//
102
103IDA_WINZJ ACCELERATORS
104BEGIN
105    VK_F1,          IDM_INFO,               VIRTKEY, NOINVERT
106    "A",            IDM_MODAL,              VIRTKEY, CONTROL, NOINVERT
107    "B",            IDM_MODALLESS,          VIRTKEY, CONTROL, NOINVERT
108    "C",            IDM_FILE,               VIRTKEY, CONTROL, NOINVERT
109    "1",            IDM_ARROW,              VIRTKEY, CONTROL, NOINVERT
110    "2",            IDM_WAIT,               VIRTKEY, CONTROL, NOINVERT
111    "3",            IDM_USER,               VIRTKEY, CONTROL, NOINVERT
112    "C",            IDM_CHINESE,            VIRTKEY, SHIFT, CONTROL, NOINVERT
113    "D",            IDM_ENGLISH,            VIRTKEY, SHIFT, CONTROL, NOINVERT
114END
115
116
117/////////////////////////////////////////////////////////////////////////////
118//
119// Dialog
120//
121
122IDD_CHECK DIALOGEX 5050185142
123STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION
124CAPTION "復選顯示位圖選擇"
125FONT 8"MS Shell Dlg"40000x1
126BEGIN
127    DEFPUSHBUTTON   "確定",IDOK,128,15,50,14
128    PUSHBUTTON      "取消",IDCANCEL,128,44,50,14
129    CONTROL         "復選位圖 1",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,31,26,54,10
130    CONTROL         "復選位圖 2",IDC_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,31,46,54,10
131    CONTROL         "復選位圖 3",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,31,66,54,10
132    CONTROL         "復選位圖 4",IDC_CHECK4,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,31,86,54,10
133    CONTROL         "復選位圖 5",IDC_CHECK5,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,31,106,54,10
134END
135
136IDD_RADIO DIALOGEX 5050185142
137STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION
138CAPTION "單選顯示位圖選擇"
139FONT 8"MS Shell Dlg"40000x1
140BEGIN
141    DEFPUSHBUTTON   "確定",IDOK,128,15,50,14
142    PUSHBUTTON      "取消",IDCANCEL,128,44,50,14
143    CONTROL         "單選位圖 1",IDC_RADIO1,"Button",BS_AUTORADIOBUTTON,31,26,54,10
144    CONTROL         "單選位圖 2",IDC_RADIO2,"Button",BS_AUTORADIOBUTTON,31,46,54,10
145    CONTROL         "單選位圖 3",IDC_RADIO3,"Button",BS_AUTORADIOBUTTON,31,66,54,10
146    CONTROL         "單選位圖 4",IDC_RADIO4,"Button",BS_AUTORADIOBUTTON,31,86,54,10
147    CONTROL         "單選位圖 5",IDC_RADIO5,"Button",BS_AUTORADIOBUTTON,31,106,54,10
148END
149
150
151/////////////////////////////////////////////////////////////////////////////
152//
153// DESIGNINFO
154//
155
156#ifdef APSTUDIO_INVOKED
157GUIDELINES DESIGNINFO
158BEGIN
159    IDD_CHECK, DIALOG
160    BEGIN
161        LEFTMARGIN, 7
162        RIGHTMARGIN, 178
163        TOPMARGIN, 7
164        BOTTOMMARGIN, 135
165    END
166
167    IDD_RADIO, DIALOG
168    BEGIN
169        LEFTMARGIN, 7
170        RIGHTMARGIN, 178
171        TOPMARGIN, 7
172        BOTTOMMARGIN, 135
173    END
174END
175#endif    // APSTUDIO_INVOKED
176
177
178/////////////////////////////////////////////////////////////////////////////
179//
180// Bitmap
181//
182
183IDB_A                   BITMAP                  "bmpA.bmp"
184IDB_B                   BITMAP                  "bmpB.bmp"
185IDB_C                   BITMAP                  "bmpC.bmp"
186IDB_D                   BITMAP                  "bmpD.bmp"
187IDB_E                   BITMAP                  "bmpE.bmp"
188
189/////////////////////////////////////////////////////////////////////////////
190//
191// String Table
192//
193
194STRINGTABLE
195BEGIN
196    IDS_APPNAME_CH          "第三次作業"
197    IDS_APPNAME_EN          "My Work 3"
198    IDS_WNDCLASSNAME        "WinZJ"
199    IDS_CURSOR_PREFIX_CH    "當前使用的光標是:"
200    IDS_CURSOR_PREFIX_EN    "The current cursor is : "
201    IDS_CURSOR_ARROW        "IDC_ARROW"
202END
203
204STRINGTABLE
205BEGIN
206    IDS_CURSOR_WAIT         "IDC_WAIT"
207    IDS_CURSOR_USER_CH      "我畫的光標"
208    IDS_CURSOR_USER_EN      "MY CURSOR"
209END
210
211#endif    // Chinese (Simplified, PRC) resources
212/////////////////////////////////////////////////////////////////////////////
213
214
215/////////////////////////////////////////////////////////////////////////////

216// English resources
217
218#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
219LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL
220
221/////////////////////////////////////////////////////////////////////////////
222//
223// Menu
224//
225
226IDM_WINZJ_EN MENU
227BEGIN
228    POPUP "&File"
229    BEGIN
230        MENUITEM "E&xit",                       IDM_EXIT
231    END
232    POPUP "&OpenDialog"
233    BEGIN
234        MENUITEM "Open &Modal Dialog\tCtrl+A",  IDM_MODAL
235        MENUITEM "Open Modal&Less Dialog\tCtrl+B", IDM_MODALLESS
236        MENUITEM "Open &File Dialog\tCtrl+C",   IDM_FILE
237    END
238    POPUP "&Cursor"
239    BEGIN
240        MENUITEM "Cursor&1(ARROW)\tCtrl+1",     IDM_ARROW
241        MENUITEM "Cursor&2(WAIT)\tCtrl+2",      IDM_WAIT
242        MENUITEM "Cursor&3(User)\tCtrl+3",      IDM_USER
243    END
244    POPUP "&Language"
245    BEGIN
246        MENUITEM "中文(&C)\tCtrl+Shift+C",        IDM_CHINESE
247        MENUITEM "&English\tCtrl+Shift+D",      IDM_ENGLISH
248    END
249    POPUP "&About"
250    BEGIN
251        MENUITEM "Program &Information\tF1",    IDM_INFO
252    END
253END
254
255#endif    // English resources
256/////////////////////////////////////////////////////////////////////////////
257
258
259
260#ifndef APSTUDIO_INVOKED
261/////////////////////////////////////////////////////////////////////////////
262//
263// Generated from the TEXTINCLUDE 3 resource.
264//
265
266
267/////////////////////////////////////////////////////////////////////////////
268#endif    // not APSTUDIO_INVOKED
269
270


WinZJ.cpp
  1// 資源就不釋放了,系統自己回收。
  2
  3#include <Windows.h>
  4#include <string.h>
  5#include "resource.h"
  6
  7
  8#define STR_BUF_MAX  1024
  9
 10
 11BOOL bCheck[ 5 ] = 0 };
 12TCHAR szWndClassName[ STR_BUF_MAX ];
 13HWND  hDlgLess = NULL;
 14INT   iRadioSelector = 0;
 15
 16
 17LRESULT CALLBACK WndProc( HWND, UINT, WPARAM, LPARAM );
 18INT_PTR CALLBACK DlgProc( HWND, UINT, WPARAM, LPARAM );
 19BOOL  CALLBACK DlgLessProc( HWND, UINT, WPARAM, LPARAM );
 20
 21
 22int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nCmdShow) {
 23        LoadString( hInst, IDS_WNDCLASSNAME, szWndClassName, STR_BUF_MAX );
 24
 25        WNDCLASSEX wc;
 26        wc.cbClsExtra    = 0;
 27        wc.cbSize        = sizeof(wc);
 28        wc.cbWndExtra    = 0;
 29        wc.hbrBackground = (HBRUSH)::GetStockObject( WHITE_BRUSH );
 30        wc.hCursor       = NULL;
 31        wc.hIcon         = ::LoadIcon( hInst, MAKEINTRESOURCE(IDI_WINZJ) );
 32        wc.hIconSm       = ::LoadIcon( hInst, MAKEINTRESOURCE(IDI_WINZJ) );
 33        wc.hInstance     = hInst;
 34        wc.lpfnWndProc   = WndProc;
 35        wc.lpszClassName = szWndClassName;
 36        wc.lpszMenuName  = NULL;
 37        wc.style         = CS_HREDRAW | CS_VREDRAW;
 38
 39        ::RegisterClassEx( &wc );
 40
 41        HWND hWnd = ::CreateWindowEx( 0, szWndClassName, TEXT(""), 
 42                WS_OVERLAPPEDWINDOW, 
 43                100100800600
 44                NULL, NULL, wc.hInstance, NULL );
 45
 46        ::ShowWindow( hWnd,nCmdShow );
 47        ::UpdateWindow( hWnd );
 48
 49        HACCEL hAccel = ::LoadAccelerators( hInst, MAKEINTRESOURCE(IDA_WINZJ) );
 50        MSG msg;
 51        while ( ::GetMessage( &msg, NULL, 00 ) ) {
 52                if ( (::IsWindow(hDlgLess)) && (::IsDialogMessage(hDlgLess,&msg)) ) {
 53                        continue;
 54                }

 55                if ( ! ::TranslateAccelerator( hWnd, hAccel, &msg ) ) {
 56                        ::TranslateMessage( &msg );
 57                        ::DispatchMessage( &msg );
 58                }

 59        }

 60        return msg.wParam;
 61}

 62
 63
 64LRESULT CALLBACK WndProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) {
 65        HDC hdc, hdcMem;
 66        PAINTSTRUCT ps;
 67        HMENU hMenu;
 68        RECT  rt;
 69        POINT pt;
 70        int i;
 71
 72        OPENFILENAME ofn;
 73        TCHAR szPath[ STR_BUF_MAX ], szFile[ STR_BUF_MAX ];
 74
 75        HBITMAP hbmpOld;
 76
 77        static HINSTANCE hInst;
 78        static INT iLangSelector;  // Base--Chinese,  0--Chinese,  1--English
 79        static HCURSOR hCursor[ 3 ];
 80        static INT iCursorSelector; // Base--Arrow, 0--Arrow, 1-Wait, 2--User
 81        static TCHAR szText[ STR_BUF_MAX ];
 82        static TCHAR szCursor[3][ STR_BUF_MAX ];
 83        static HBITMAP hBmp[ 5 ];
 84
 85        switch ( uMsg ) {
 86        case WM_CREATE : 
 87                hInst = ((LPCREATESTRUCT)lParam)->hInstance;
 88
 89                hCursor[ 0 ] = ::LoadCursor( NULL, IDC_ARROW );
 90                hCursor[ 1 ] = ::LoadCursor( NULL, IDC_WAIT );
 91                hCursor[ 2 ] = ::LoadCursor( hInst, MAKEINTRESOURCE(IDC_WINZJ) );
 92
 93                for ( i = IDB_A; i <= IDB_E; ++i ) {
 94                        hBmp[ i-IDB_A ] = ::LoadBitmap( hInst, MAKEINTRESOURCE(i) );
 95                }

 96
 97                ::LoadString( hInst, IDS_CURSOR_ARROW, szCursor[ 0 ], STR_BUF_MAX );
 98                ::LoadString( hInst, IDS_CURSOR_WAIT,  szCursor[ 1 ], STR_BUF_MAX );
 99
100                iCursorSelector = 0// arrow
101                ::SendMessage( hWnd, WM_COMMAND, IDM_CHINESE, 0 );
102                return 0;
103
104        case WM_PAINT : 
105                hdc = ::BeginPaint( hWnd, &ps );
106
107                ::LoadString( hInst, IDS_CURSOR_PREFIX_CH+iLangSelector, szText, STR_BUF_MAX );
108                lstrcat( szText, szCursor[iCursorSelector] );
109                ::TextOut( hdc, 5010, szText, lstrlen(szText) );
110
111                hdcMem = ::CreateCompatibleDC( hdc );
112
113                for ( i = 0; i < 5++i ) {
114                        if ( bCheck[ i ] ) {
115                                hbmpOld = (HBITMAP)::SelectObject( hdcMem, hBmp[ i ] );
116                                ::BitBlt( hdc, 50, i*110+50130110
117                                        hdcMem, 00, SRCCOPY );
118                                ::SelectObject( hdcMem, hbmpOld );
119                        }

120                }

121                hbmpOld = (HBITMAP)::SelectObject( hdcMem, hBmp[ iRadioSelector ] );
122                ::BitBlt( hdc, 200100130110
123                        hdcMem, 00, SRCCOPY );
124                ::SelectObject( hdcMem, hbmpOld );
125
126                ::DeleteDC( hdcMem );
127
128                ::EndPaint( hWnd, &ps );
129                return 0;
130
131        case WM_DESTROY : 
132                ::PostQuitMessage( 0 );
133                return 0;
134
135        case WM_SETCURSOR : 
136                ::GetClientRect( hWnd, &rt );
137                ::GetCursorPos( &pt );
138                ::ScreenToClient( hWnd, &pt );
139                if ( (rt.left<=pt.x) && (pt.x<rt.right) && (rt.top<=pt.y) && (pt.y<rt.bottom) ) {
140                        ::SetCursor( hCursor[ iCursorSelector ] );
141                        return 0;
142                }

143                break;
144
145        case WM_COMMAND : 
146                hMenu = ::GetMenu( hWnd );
147                switch ( LOWORD(wParam) ) {
148                case IDM_EXIT : 
149                        ::DestroyWindow( hWnd );
150                        return 0;
151
152                case IDM_MODAL : 
153                        if ( IDOK == ::DialogBox( hInst, MAKEINTRESOURCE(IDD_CHECK), hWnd, DlgProc ) ) {
154                                ::InvalidateRect( hWnd, NULL, TRUE );
155                        }

156                        return 0;
157                case IDM_MODALLESS : 
158                        if ( ! ::IsWindow( hDlgLess ) ) {
159                                hDlgLess = ::CreateDialog( hInst, MAKEINTRESOURCE(IDD_RADIO), hWnd, DlgLessProc );
160                                ::ShowWindow( hDlgLess, SW_SHOW );
161                        }

162                        return 0;
163                case IDM_FILE : 
164                        memset( &ofn, 0sizeof(ofn) );
165                        ofn.lStructSize = sizeof(ofn);
166                        ofn.hInstance  = hInst;
167                        ofn.hwndOwner = hWnd;
168                        ofn.lpstrFilter = TEXT("All Files(*.*)\0*.*\0Text Files(*.txt)\0*.txt\0C++ Files(*.cpp)\0*.cpp\0\0");
169                        ofn.lpstrTitle = TEXT("打開");
170                        lstrcpy( szFile, TEXT("") );
171                        ofn.lpstrFile = szFile;
172                        ofn.nMaxFile  = sizeof(szFile) / sizeof(TCHAR);
173                        ::GetCurrentDirectory( STR_BUF_MAX, szPath );
174                        ofn.lpstrInitialDir = szPath;
175                        ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST;
176                        if ( ::GetOpenFileName( &ofn ) ) {
177                                ::MessageBox( hWnd, szFile, TEXT("文件名"), MB_OK );
178                        }

179                        return 0;
180
181                case IDM_ARROW : 
182                case IDM_WAIT : 
183                case IDM_USER : 
184                        iCursorSelector = (int)(LOWORD(wParam)) - (int)(IDM_ARROW);
185                        ::SetCursor( hCursor[ iCursorSelector ] );
186                        ::CheckMenuRadioItem( hMenu, IDM_ARROW, IDM_USER, IDM_ARROW+iCursorSelector, MF_BYCOMMAND );
187                        ::InvalidateRect( hWnd, NULL, TRUE );
188                        return 0;
189
190                case IDM_CHINESE : 
191                case IDM_ENGLISH : 
192                        iLangSelector = (int)(LOWORD(wParam)) - (int)(IDM_CHINESE);
193                        hMenu = ::LoadMenu( hInst, MAKEINTRESOURCE(IDM_WINZJ_CH+iLangSelector) );
194                        ::SetMenu( hWnd, hMenu );
195                        ::CheckMenuRadioItem( hMenu, IDM_CHINESE, IDM_ENGLISH, IDM_CHINESE+iLangSelector, MF_BYCOMMAND );
196                        ::LoadString( hInst, IDS_CURSOR_USER_CH+iLangSelector, szCursor[ 2 ], STR_BUF_MAX );
197                        ::LoadString( hInst, IDS_APPNAME_CH+iLangSelector, szText, STR_BUF_MAX );
198                        ::SetWindowText( hWnd, szText );
199                        ::SendMessage( hWnd, WM_COMMAND, IDM_ARROW+iCursorSelector, 0 );
200                        ::InvalidateRect( hWnd, NULL, TRUE );
201                        return 0;
202
203                case IDM_INFO : 
204                        ::MessageBox( hWnd, TEXT("第三次上機練習\n對話框,光標,字符串,位圖\n\n學號:***********\n姓名:****\n"), TEXT("Lab3 ZJ"), MB_OK|MB_ICONINFORMATION );
205                        return 0;
206                }

207                break;
208        }

209        return ::DefWindowProc( hWnd, uMsg, wParam, lParam );
210}

211
212
213INT_PTR CALLBACK DlgProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) {
214        int i;
215        switch ( uMsg ) {
216        case WM_INITDIALOG : 
217                for ( i = IDC_CHECK1; i <= IDC_CHECK5; ++i ) {
218                        ::CheckDlgButton( hDlg, i, bCheck[ i-IDC_CHECK1 ] );
219                }

220                return TRUE;
221        case WM_COMMAND : 
222                switch ( LOWORD(wParam) ) {
223                case IDOK : 
224                        for ( i = IDC_CHECK1; i <= IDC_CHECK5; ++i ) {
225                                bCheck[ i-IDC_CHECK1 ] = ::IsDlgButtonChecked( hDlg, i );
226                        }

227                case IDCANCEL : 
228                        ::EndDialog( hDlg, LOWORD(wParam) );
229                        return TRUE;
230                }

231                break;
232        }

233        return FALSE;
234}

235
236
237BOOL  CALLBACK DlgLessProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) {
238        switch ( uMsg ) {
239        case WM_INITDIALOG : 
240                ::CheckRadioButton( hDlg, IDC_RADIO1, IDC_RADIO5, IDC_RADIO1+iRadioSelector );
241                return TRUE;
242        case WM_COMMAND : 
243                switch ( LOWORD(wParam) ) {
244                case IDOK : 
245                        iRadioSelector = 0;
246                        while ( ! ::IsDlgButtonChecked( hDlg, IDC_RADIO1+iRadioSelector ) ) {
247                                ++iRadioSelector;
248                        }

249                        ::InvalidateRect( ::GetParent(hDlg), NULL, TRUE );
250                        return TRUE;
251                case IDCANCEL : 
252                        ::DestroyWindow( hDlgLess );
253                        hDlgLess = NULL;
254                        return TRUE;
255                }

256                break;
257        }

258        return FALSE;
259}

260


posted on 2011-04-24 15:33 coreBugZJ 閱讀(1100) 評論(0)  編輯 收藏 引用 所屬分類: 課內作業

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲人成亚洲人成在线观看| 亚洲高清av| 亚洲欧美日韩综合aⅴ视频| 日韩一级大片在线| 99亚洲精品| 亚洲视频观看| 亚洲女同精品视频| 性刺激综合网| 久久精品最新地址| 女人天堂亚洲aⅴ在线观看| 国产一区二区三区不卡在线观看| 欧美人成在线| 国产精品乱码| 一区二区自拍| 这里是久久伊人| 久久成人精品一区二区三区| 欧美影院成年免费版| 亚洲国产mv| 国产精品视频久久久| 国产精品入口夜色视频大尺度| 亚洲最新在线| 性欧美暴力猛交另类hd| 老司机一区二区三区| 欧美激情免费在线| 亚洲美女区一区| 午夜精品久久99蜜桃的功能介绍| 久久久久久国产精品mv| 欧美日韩色婷婷| 国产专区精品视频| 99亚洲视频| 久久亚洲一区二区| 一区二区三区久久久| 久久久久久久久久码影片| 欧美特黄一级大片| 在线精品视频在线观看高清| 亚洲无毛电影| 亚洲第一级黄色片| 欧美一区不卡| 国产精品久久久久久福利一牛影视 | 亚洲狠狠婷婷| 久久九九精品99国产精品| 亚洲第一偷拍| 久久精品99久久香蕉国产色戒| 欧美日韩精品免费观看| 黄色亚洲精品| 久久精品二区| 亚洲午夜在线观看视频在线| 欧美伦理影院| 亚洲精品午夜| 欧美成人日本| 久久久久久久一区二区三区| 国产精品专区h在线观看| 中文精品一区二区三区 | 免费观看国产成人| 亚洲欧洲99久久| 欧美性大战久久久久| 亚洲理论电影网| 欧美高清在线观看| 久久午夜精品| 极品日韩久久| 蜜臀久久99精品久久久久久9| 午夜天堂精品久久久久| 国产精品一区毛片| 午夜视频精品| 亚洲欧美清纯在线制服| 国产麻豆精品久久一二三| 香蕉乱码成人久久天堂爱免费| 亚洲视频视频在线| 国产精品久久久一区麻豆最新章节 | 免费看黄裸体一级大秀欧美| 亚洲高清影视| 亚洲国产精品成人va在线观看| 亚洲日韩中文字幕在线播放| 久久精品官网| 欧美伊人久久久久久午夜久久久久 | 亚洲欧美日韩在线播放| 国产精品区免费视频| 午夜精品久久久久久久久久久久| 亚洲一区精彩视频| 国模叶桐国产精品一区| 欧美 日韩 国产精品免费观看| 久久久水蜜桃| 日韩视频一区二区三区在线播放| 亚洲精品在线二区| 国产精品毛片一区二区三区| 久久久www| 欧美电影在线观看完整版| 亚洲精品自在在线观看| 一本久久知道综合久久| 国产欧美一区二区精品忘忧草| 久久视频一区| 欧美日本韩国一区| 欧美一二区视频| 久热re这里精品视频在线6| 亚洲激情社区| 亚洲手机成人高清视频| 激情丁香综合| 99精品视频免费| 国内精品久久久久影院 日本资源| 你懂的视频一区二区| 欧美日韩视频在线一区二区观看视频| 性久久久久久| 欧美成人一二三| 性做久久久久久免费观看欧美| 久久色中文字幕| 亚洲综合国产| 欧美99久久| 欧美一二区视频| 欧美乱大交xxxxx| 久久夜色精品一区| 国产精品高潮呻吟久久av无限| 久久在线免费观看| 国产精品久久久久免费a∨大胸| 欧美激情偷拍| 国产一区二区在线观看免费| 亚洲免费成人| 亚洲精品国产精品国产自| 新片速递亚洲合集欧美合集| 亚洲视频一区在线| 欧美国产日韩一区| 欧美成人高清| 激情久久久久久| 欧美亚洲自偷自偷| 午夜激情综合网| 欧美日韩亚洲天堂| 亚洲高清色综合| 亚洲成人资源| 久久国产加勒比精品无码| 香蕉久久夜色| 欧美激情第三页| 欧美成人精品1314www| 蜜臀va亚洲va欧美va天堂| 国产在线日韩| 在线亚洲欧美| 玖玖玖免费嫩草在线影院一区| 欧美一级网站| 国产精品一区=区| 99国产精品国产精品毛片| 亚洲国产欧美久久| 久久人人爽人人爽| 你懂的亚洲视频| 在线观看91精品国产入口| 久久久久久久久综合| 巨胸喷奶水www久久久免费动漫| 国产午夜亚洲精品不卡| 性欧美大战久久久久久久免费观看 | 一区二区三区av| 亚洲在线网站| 99热精品在线| 欧美在线观看视频在线| 亚洲第一天堂av| 麻豆成人在线观看| 在线激情影院一区| 欧美99久久| 久久午夜精品一区二区| 国产综合久久久久久| 午夜精品一区二区三区在线 | 欧美国产日本在线| 有码中文亚洲精品| 欧美国产日韩在线观看| 米奇777超碰欧美日韩亚洲| 国产亚洲成精品久久| 欧美.www| 久久久久亚洲综合| 亚洲乱码日产精品bd| 久久一区国产| 亚洲精品中文字| 欧美.www| 欧美本精品男人aⅴ天堂| 亚洲福利免费| 欧美激情精品久久久久| 一本一道久久综合狠狠老精东影业| 一区二区三区日韩在线观看| 国产精品免费电影| 久久人人九九| 日韩亚洲欧美成人| 久久蜜桃资源一区二区老牛| 亚洲欧洲综合另类在线| 国产精品日韩欧美一区| 久久在线观看视频| 亚洲天堂网在线观看| 葵司免费一区二区三区四区五区| 9色精品在线| 国产欧美一区二区视频| 免费观看一级特黄欧美大片| 国产精品久久久久久久久| 欧美一区在线直播| 亚洲精品四区| 久久成人18免费观看| 免费久久精品视频| 久久综合伊人77777麻豆| 欧美影院成人| 99re6热在线精品视频播放速度 | 亚洲一本大道在线| 亚洲国产一区在线观看| 久久精品免费| 亚洲欧美日韩精品一区二区| 亚洲国产精品尤物yw在线观看| 国产精品婷婷| 欧美三级日韩三级国产三级|