• <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>

            Win32 的框架代碼

            Posted on 2008-01-11 03:00 MiweiDev 閱讀(811) 評論(3)  編輯 收藏 引用 所屬分類: Win32 SDk

            老是寫同樣的代碼,自己也懶得記,就把他放在上面以后方便用:

            #include <windows.h>

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

            int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                                PSTR szCmdLine, 
            int iCmdShow)
            {
                static TCHAR szAppName[] 
            = TEXT ("HelloWin") ;
                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    
            = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
                  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,    // window class name
                        TEXT (
            "The Hello Program"),    // window caption
                        WS_OVERLAPPEDWINDOW,    
            // window style
                        CW_USEDEFAULT,    
            // initial x position
                        CW_USEDEFAULT,    
            // initial y position
                        CW_USEDEFAULT,    
            // initial x size
                        CW_USEDEFAULT,    
            // initial y size
                        
            NULL,            // parent window handle
                        
            NULL,            // window menu handle
                        hInstance,        
            // program instance handle
                        
            NULL) ;         // creation parameters
                 
                ShowWindow (hwnd, iCmdShow) ;
                UpdateWindow (hwnd) ;
                 
                
            while (GetMessage (&msg, NULL00))
                 {
                    TranslateMessage (
            &msg) ;
                      DispatchMessage (
            &msg) ;
                 }
                return (
            int)msg.wParam ;
            }

            LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
            {
                HDC            hdc ;
                PAINTSTRUCT ps ;
                RECT        rect ;
                 
                switch (message)
                 {
                
            case     WM_PAINT:
                    hdc 
            = BeginPaint (hwnd, &ps) ;
                      
                    GetClientRect (hwnd, 
            &rect) ;
                      
                    DrawText (hdc, TEXT (
            "Hello, Windows XP!"), -1&rect,
                        DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
                          EndPaint (hwnd, 
            &ps) ;
                        return 
            0 ;
                      
                
            case    WM_DESTROY:
                    PostQuitMessage (
            0) ;
                    return 
            0 ;
                 }
               return DefWindowProc (hwnd, message, wParam, lParam) ;
            }

            Feedback

            # re: Win32 的框架代碼  回復  更多評論   

            2008-01-20 16:45 by 小不點
            固定窗口的大小:

            case WM_GETMINMAXINFO:
            {
            // Don't allow resizing in windowed mode.
            // Fix the size of the window to 640x480 (client size)
            MINMAXINFO* pMinMax = (MINMAXINFO*) lParam;

            DWORD dwFrameWidth = GetSystemMetrics( SM_CXSIZEFRAME );
            DWORD dwFrameHeight = GetSystemMetrics( SM_CYSIZEFRAME );
            DWORD dwMenuHeight = GetSystemMetrics( SM_CYMENU );
            DWORD dwCaptionHeight = GetSystemMetrics( SM_CYCAPTION );

            pMinMax->ptMinTrackSize.x = WINDOW_WIDTH + dwFrameWidth * 2;
            pMinMax->ptMinTrackSize.y = WINDOW_HEIGHT + dwFrameHeight * 2 +
            dwMenuHeight + dwCaptionHeight;

            pMinMax->ptMaxTrackSize.x = pMinMax->ptMinTrackSize.x;
            pMinMax->ptMaxTrackSize.y = pMinMax->ptMinTrackSize.y;
            }
            return 0L;

            # re: Win32 的框架代碼  回復  更多評論   

            2008-12-11 11:00 by cpy
            case WM_GETMINMAXINFO:
            WIDTH_WIDTH是樓主自定義(640)嗎?
            如果這樣,pMinMax->ptMinTrackSize.x
            =WINDOW_WIDTH+dwFrameWidth*2-GetSystemMetrics(SM_CXBORDER)。更準確一點.
            pMinMax->ptMinTrackSize.y類似。

            # re: Win32 的框架代碼  回復  更多評論   

            2008-12-11 17:05 by 小不點
            Thank You!
            久久久午夜精品福利内容| 天天久久狠狠色综合| 久久精品亚洲欧美日韩久久| 91精品国产综合久久四虎久久无码一级| 99久久成人国产精品免费| 国产精品狼人久久久久影院| 精品无码久久久久国产动漫3d| 国产亚洲精久久久久久无码| 久久久久99精品成人片牛牛影视| 亚洲欧洲久久久精品| 久久精品国产半推半就| 狠狠色丁香婷婷久久综合五月| 精品亚洲综合久久中文字幕| 国产精品熟女福利久久AV| 热综合一本伊人久久精品| 色噜噜狠狠先锋影音久久| 亚洲国产综合久久天堂| 日韩精品久久久久久免费| 国产99久久久国产精品小说| 99热成人精品热久久669| 亚洲?V乱码久久精品蜜桃| 亚洲国产成人久久精品影视| 一级做a爰片久久毛片看看| 天天久久狠狠色综合| www久久久天天com| 亚洲乱码中文字幕久久孕妇黑人| 伊人久久大香线蕉精品不卡| 久久亚洲高清观看| 狠狠色婷婷综合天天久久丁香| 国产成人精品综合久久久久| 久久久国产打桩机| 亚洲精品无码久久久久AV麻豆| 久久久精品一区二区三区| AV狠狠色丁香婷婷综合久久| 久久亚洲欧美国产精品| 亚洲va中文字幕无码久久| 国内精品久久久久久久久电影网 | 久久99精品久久久久久| 色综合久久中文字幕无码| 久久夜色精品国产网站| 国产精品一区二区久久国产 |