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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? iconpro.c

?? ICon文件格式
?? C
?? 第 1 頁 / 共 2 頁
字號:
/****************************************************************************\
*            
*     FILE:     ICONPRO.C
*
*     PURPOSE:  IconPro Project main C file
*
*     COMMENTS: This file contains the main window and instance handing
*               for this project.
*
*     FUNCTIONS:
*      EXPORTS: 
*               GetSaveIconFileName     - Get the name of the file to write
*               GetOpenIconFileName     - Get the name of a file to open
*      LOCALS:
*               WinMain                 - Program entry point
*               InitApplication         - Register classes
*               InitInstance            - Create windows
*               WndProc                 - Main Window's 'Window Procedure'
*               OnCommand               - Handle command messages (menu items)
*               AboutDlgProc            - About Dialog Box's 'Window Procedure'
*               CreateNewMDIChildWindow - Creates a new child MDI window
*               UpdateMenuState         - Grays/enables appropriate menu items
*               QueryCloseAllChildren   - Close all children if possible
*
*     Copyright 1995 Microsoft Corp.
*
*
* History:
*                July '95 - Created
*
\****************************************************************************/
#include <Windows.H>
#include "Resource.h"
#include "Icons.H"
#include "IconPro.h"
#include "MDIChild.h"

/****************************************************************************/
/* Local Function Prototypes */
int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow);
BOOL InitApplication( HANDLE hInstance );
BOOL InitInstance( HANDLE hInstance, int nCmdShow );
LRESULT CALLBACK WndProc( HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam );
LRESULT OnCommand( HWND hWnd, WPARAM wParam, LPARAM lParam );
BOOL CALLBACK AboutDlgProc( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam );
HWND CreateNewMDIChildWindow( LPSTR szTitle, LPVOID lpData );
BOOL UpdateMenuState( HWND hWnd, HMENU hMenu );
BOOL QueryCloseAllChildren( void );
/****************************************************************************/


/****************************************************************************/
/* Global Variables */
HINSTANCE	hInst;
HWND        hWndMain, hMDIClientWnd;
char        szAppName[] = TEXT("IconPro");
char        szTitle[] = TEXT("IconPro Icon Handler");
char        szChildClassName[] = TEXT("IconChildClass");
char        szHelpFileName[] = "IconPro.HLP";
/****************************************************************************/


/****************************************************************************
*
*     FUNCTION: WinMain
*
*     PURPOSE:  Main entry point for this app
*
*     PARAMS:   HANDLE hInstance     - This instance
*               HANDLE hPrevInstance - Previous instance
*               LPSTR  lpszCmdLine   - Command Line
*               int    nCmdShow      - Desired window status
*
*     RETURNS:  int - return code
*
* History:
*                July '95 - Created
*
\****************************************************************************/
int PASCAL WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow)
{
    MSG msg;

    // standard init stuff
    if( ! hPrevInstance )
    {
        if( ! InitApplication( hInstance ) )
        {
            return FALSE;
        }
    }
    if( ! InitInstance( hInstance, nCmdShow ) )
    {
        return FALSE;
    }

    // Standard message loop
    while (GetMessage(&msg, (HWND) NULL, 0, 0)) 
    {
        if( !TranslateMDISysAccel(hMDIClientWnd, &msg) )
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    }
    return msg.wParam;
}
/* End WinMain() ************************************************************/



/****************************************************************************
*
*     FUNCTION: InitApplication
*
*     PURPOSE:  Register classes
*
*     PARAMS:   HANDLE hInstance     - This instance
*
*     RETURNS:  BOOL - TRUE for success, FALSE for failure
*
* History:
*                July '95 - Created
*
\****************************************************************************/
BOOL InitApplication( HANDLE hInstance )
{
    WNDCLASS    wc;
    BOOL        bResult;

    wc.style         = 0;
    wc.lpfnWndProc   = (WNDPROC)WndProc;
    wc.cbClsExtra    = 0;
    wc.cbWndExtra    = 0;
    wc.hInstance     = hInstance;
    wc.hIcon         = LoadIcon( hInstance, MAKEINTRESOURCE(ICONPRO_ICON) );
    wc.hCursor       = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = NULL;
    wc.lpszMenuName  = MAKEINTRESOURCE(ICONPRO_MENU);
    wc.lpszClassName = szAppName;

    bResult = RegisterClass( &wc );

    wc.lpfnWndProc   = (WNDPROC)IconChildWndProc;
    wc.cbClsExtra    = 0;
    wc.cbWndExtra    = 0;
    wc.hInstance     = hInstance;
    wc.hIcon         = LoadIcon( hInstance, MAKEINTRESOURCE(ICONPRO_ICON) );
    wc.hCursor       = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = CreateSolidBrush(COLOR_3DFACE);
    wc.lpszMenuName  = NULL;
    wc.lpszClassName = szChildClassName;

    return( bResult && RegisterClass( &wc ) );
}
/* End InitApplication() ***************************************************/



/****************************************************************************
*
*     FUNCTION: InitInstance
*
*     PURPOSE:  Create and show the main window
*
*     PARAMS:   HANDLE hInstance  - This instance
*               int    nCmdShow   - desired show state
*
*     RETURNS:  BOOL - TRUE for success, FALSE for failure
*
* History:
*                July '95 - Created
*
\****************************************************************************/
BOOL InitInstance( HANDLE hInstance, int nCmdShow )
{
    hInst = hInstance;
    hWndMain = CreateWindow(
        szAppName,
        szTitle,
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT, 0,
        CW_USEDEFAULT, 0,
        NULL,
        NULL,
        hInstance,
        NULL );

    if( hWndMain == NULL )
    {
        return FALSE;
    }

    ShowWindow( hWndMain, nCmdShow );
    UpdateWindow( hWndMain );

    return TRUE;
}
/* End InitInstance() *****************************************************/



/****************************************************************************
*
*     FUNCTION: WndProc
*
*     PURPOSE:  Window Procedure for the main window.
*
*     PARAMS:   HWND   hWnd    - This window
*               UINT   Message - Which message?
*               WPARAM wParam  - message parameter
*               LPARAM lParam  - message parameter
*
*     RETURNS:  LRESULT - depends on message
*
* History:
*                July '95 - Created
*
\****************************************************************************/
LRESULT CALLBACK WndProc( HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam )
{
    // which message are we handling?
    switch( Message )
    {
        // Menu is coming up, initialize it
        case WM_INITMENU:
            UpdateMenuState( hWnd, (HMENU)wParam );
            return 1;
        break; // end WM_INITMENU

        // Window is being created, create the MDI client also
        case WM_CREATE:
        {
            CLIENTCREATESTRUCT ccs;

            // Retrieve the handle of the Window menu and assign the
            // first child window identifier.
            ccs.hWindowMenu = GetSubMenu(GetMenu(hWnd), 2 );
            ccs.idFirstChild = IDM_WINDOWCHILD;

            // Create the MDI client window
            hMDIClientWnd = CreateWindow(	TEXT("MDICLIENT"), (LPCTSTR) NULL,
                                            WS_CHILD | WS_CLIPCHILDREN | WS_VSCROLL | WS_HSCROLL,
                                            0, 0, 0, 0, hWnd, (HMENU) 0xCAC, hInst, (LPSTR) &ccs );

            ShowWindow(hMDIClientWnd, SW_SHOW);
        }
        break; // End WM_CREATE

        // Command Messages (menu items, etc)
        case WM_COMMAND:
            OnCommand( hWnd, wParam, lParam );
            return DefFrameProc( hWnd, hMDIClientWnd, Message, wParam, lParam );
        break; // End WM_COMMAND

        // Time to close down now :(
        case WM_CLOSE:
        {
            // Will the children allow it? (Give 'em a chance to cancel)
            if( QueryCloseAllChildren() )
            {
                WinHelp( hWnd, szHelpFileName, HELP_QUIT, 0 );
                DestroyWindow( hWnd );
                PostQuitMessage( 0 );
                return DefFrameProc( hWnd, hMDIClientWnd, Message, wParam, lParam );
            }
            return 0;
        }
        break; // End WM_CLOSE

        // Pass it on to the default window procedure
        default:
            return DefFrameProc( hWnd, hMDIClientWnd, Message, wParam, lParam );
        break; // end default
    }
    return DefFrameProc( hWnd, hMDIClientWnd, Message, wParam, lParam );
}
/* End WndProc() ***********************************************************/



/****************************************************************************
*
*     FUNCTION: OnCommand
*
*     PURPOSE:  Handles command messages for main window
*
*     PARAMS:   HWND   hWnd    - This window
*               WPARAM wParam  - message parameter
*               LPARAM lParam  - message parameter
*
*     RETURNS:  LRESULT - depends on message
*
* History:
*                July '95 - Created
*
\****************************************************************************/
LRESULT OnCommand( HWND hWnd, WPARAM wParam, LPARAM lParam )
{
    // Which command is it?
    switch( LOWORD( wParam ) )
    {
        // File->New menu option - spawn a new child
        case ID_FILE_NEW:
        {
            HWND    hWndNew;

            hWndNew = CreateNewMDIChildWindow( TEXT("Untitled"), NULL );
            SendMessage( hMDIClientWnd, WM_MDIACTIVATE, (WPARAM)hWndNew, 0 );
        }
        break; // End ID_FILE_NEW

        // File->Open menu option - open an ICO file
        case ID_FILE_OPEN:
        {
            HWND            hWndNew;
            LPICONRESOURCE	lpIR;
            TCHAR        	szFileName[MAX_PATH];
            TCHAR        	szFileTitle[MAX_PATH];

            // Get the name of the file to open
            if( GetOpenIconFileName( szFileName, IDS_FILTERSTRING, "Open Icon File" ) )
            {
                // Read in the icon data
                if( (lpIR = ReadIconFromICOFile( szFileName )) == NULL )
                    break;
                // Get the name of the file for the window title
                if( GetFileTitle( szFileName, szFileTitle, MAX_PATH ) )
                    break;
                // Make a new child to handle this icon
                hWndNew = CreateNewMDIChildWindow( szFileTitle, lpIR );
                SendMessage( hMDIClientWnd, WM_MDIACTIVATE, (WPARAM)hWndNew, 0 );
            }
        }
        break; // End ID_FILE_OPEN

        // File->Extract menu option - extract icon data from a DLL or EXE
        case ID_FILE_EXTRACT:
        {
            HWND            hWndNew;
            LPICONRESOURCE	lpIR;
            TCHAR        	szFileName[MAX_PATH];

            // Get the name of the file from which to extract the icon
            if( GetOpenIconFileName( szFileName, IDS_EXEFILTERSTRING, "Extract Icon from File" ) )
            {
                // Extract the icon data
                if( (lpIR = ReadIconFromEXEFile( szFileName )) == NULL )
                    break;
                // Make a new child to handle this icon
                hWndNew = CreateNewMDIChildWindow( ("Untitled"), lpIR );
                SendMessage( hMDIClientWnd, WM_MDIACTIVATE, (WPARAM)hWndNew, 0 );
            }
        }
        break; // End ID_FILE_EXTRACT

        // File->Save and File->SaveAs menu options - save current ICO file to disk
        case ID_FILE_SAVEAS:
        case ID_FILE_SAVE:
        {
            HWND    hWndActive;
            
            // Get the active MDI child window
            if( (hWndActive = (HWND)SendMessage( hMDIClientWnd, WM_MDIGETACTIVE, 0, 0 )) != NULL )
            {
                // Tell it to write its icon to disk
                SendMessage( hWndActive, WM_COMMAND, wParam, 0 );
            }
            else
                MessageBox( hWnd, TEXT("Error Getting Active Window"), TEXT("Error"), MB_OK );
        }
        break; // End ID_FILE_SAVE/ID_FILE_SAVEAS

        // File->Close menu option - close the current MDI child window
        case ID_FILE_CLOSE:
        {
            HWND    hWndActive;

            // Get the active MDI child window and tell it to close itself

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品在线网站| 成人黄色软件下载| 欧美一级高清片在线观看| 视频在线观看一区二区三区| 欧美卡1卡2卡| 久久精品国产网站| 久久亚区不卡日本| 成人免费视频视频在线观看免费| 亚洲国产成人在线| 色吊一区二区三区| 喷水一区二区三区| 2020国产成人综合网| 成人免费不卡视频| 亚洲成va人在线观看| 精品乱人伦小说| 99亚偷拍自图区亚洲| 亚洲一二三四在线| 久久综合九色综合97婷婷| av电影在线观看一区| 午夜精品福利在线| 久久精品一二三| 日韩欧美高清一区| 国产成人午夜视频| 亚洲综合在线第一页| 日韩一二三区不卡| 成人18精品视频| 免费成人美女在线观看| 中文字幕日韩欧美一区二区三区| 欧美色涩在线第一页| 国产精品一区二区久激情瑜伽 | 欧美激情一区二区在线| 欧美色区777第一页| 国产成人免费9x9x人网站视频| 一区二区三区丝袜| 久久尤物电影视频在线观看| 在线影视一区二区三区| 国产精一品亚洲二区在线视频| 亚洲激情一二三区| 国产亚洲综合性久久久影院| 精品视频123区在线观看| 高清成人在线观看| 蜜桃一区二区三区在线| 亚洲乱码中文字幕| 国产三级久久久| 日韩欧美国产小视频| 欧美三电影在线| 97久久精品人人爽人人爽蜜臀| 久久精品国产**网站演员| 亚洲自拍偷拍九九九| 国产精品色一区二区三区| 91精品国产综合久久福利| 一本高清dvd不卡在线观看| 国产夫妻精品视频| 97精品国产露脸对白| 国产精品一区二区不卡| 日本视频在线一区| 国产精品久久久久久久久快鸭 | 日本精品免费观看高清观看| 国产老女人精品毛片久久| 青青草原综合久久大伊人精品优势| 亚洲欧洲制服丝袜| 国产精品久久久久精k8| 久久久不卡网国产精品二区| 日韩一区二区免费在线电影| 欧美日韩免费电影| 欧美视频你懂的| 色综合久久88色综合天天| 99精品欧美一区二区三区综合在线| 国产大陆a不卡| 国产aⅴ精品一区二区三区色成熟| 久久狠狠亚洲综合| 久久不见久久见免费视频7| 奇米四色…亚洲| 麻豆一区二区在线| 久久爱www久久做| 九九**精品视频免费播放| 日韩电影在线观看一区| 奇米777欧美一区二区| 免费在线观看成人| 麻豆国产一区二区| 精品综合久久久久久8888| 精品一区二区三区av| 国产寡妇亲子伦一区二区| 欧美日韩dvd在线观看| 欧美综合天天夜夜久久| 欧美色涩在线第一页| 欧美日韩久久久久久| 欧美一区日本一区韩国一区| 日韩欧美你懂的| 久久你懂得1024| 亚洲视频香蕉人妖| 亚洲一线二线三线视频| 日韩精彩视频在线观看| 精品系列免费在线观看| 国产精品一区二区免费不卡| www.亚洲色图.com| 欧美网站一区二区| 欧美一级二级三级蜜桃| 久久久噜噜噜久久人人看| 国产农村妇女精品| 亚洲免费毛片网站| 免费在线视频一区| 国产成人免费在线观看| 91久久久免费一区二区| 67194成人在线观看| 国产蜜臀av在线一区二区三区| 国产精品久久久久毛片软件| 亚洲一区二区免费视频| 乱中年女人伦av一区二区| 成人黄色网址在线观看| 欧美日韩国产美女| 国产日韩欧美综合一区| 亚洲色图欧美偷拍| 久久福利视频一区二区| va亚洲va日韩不卡在线观看| 在线观看视频一区二区欧美日韩| 日韩三级.com| 亚洲品质自拍视频网站| 久久er99精品| 日本韩国一区二区三区视频| 精品国精品国产| 亚洲综合免费观看高清完整版在线 | 久久久久久日产精品| 亚洲卡通欧美制服中文| 麻豆成人91精品二区三区| 99国产精品一区| 欧美va亚洲va在线观看蝴蝶网| 中文字幕中文在线不卡住| 免费精品视频在线| 一本久道久久综合中文字幕| www日韩大片| 日韩电影在线一区二区| 色综合久久天天综合网| 久久午夜电影网| 日韩av电影免费观看高清完整版在线观看| 国产剧情一区二区三区| 91精品免费在线| 一区二区三区电影在线播| 国产精品一区二区免费不卡| 欧美一区二区女人| 亚洲国产中文字幕在线视频综合| 成人在线综合网| 欧美精品一区二区三区蜜臀| 日韩av在线免费观看不卡| 91久久一区二区| 《视频一区视频二区| 国产91精品精华液一区二区三区| 日韩午夜中文字幕| 天天影视涩香欲综合网| 色噜噜夜夜夜综合网| 中文字幕在线观看不卡| 国产激情一区二区三区四区| 日韩欧美中文一区| 午夜不卡在线视频| 欧美性xxxxxxxx| 久久精品免费看| 5858s免费视频成人| 亚洲国产精品一区二区久久恐怖片| 成人激情校园春色| 久久久精品中文字幕麻豆发布| 美女免费视频一区二区| 欧美电影免费提供在线观看| 日韩成人一级大片| 91精品麻豆日日躁夜夜躁| 丝袜亚洲另类丝袜在线| 欧美精品久久久久久久久老牛影院| 亚洲成人福利片| 欧美日韩在线三区| 丝袜国产日韩另类美女| 91黄色激情网站| 亚洲图片一区二区| 欧美日韩国产电影| 奇米精品一区二区三区在线观看一| 9191国产精品| 蜜臀av一区二区| 欧美刺激脚交jootjob| 国内精品不卡在线| 国产亚洲综合色| 成人黄色国产精品网站大全在线免费观看| 国产拍揄自揄精品视频麻豆 | 粉嫩aⅴ一区二区三区四区| 精品国产一二三区| 国产不卡视频一区二区三区| 国产精品日产欧美久久久久| 色综合久久久久久久久久久| 亚洲精品国久久99热| 欧美福利一区二区| 国产福利一区二区三区| 中文字幕一区在线观看视频| 在线视频中文字幕一区二区| 免费在线视频一区| 中文字幕免费不卡在线| 日本韩国一区二区三区视频| 视频一区国产视频| 久久久久久久久久电影| 91同城在线观看| 日本不卡一二三| 中文字幕精品在线不卡| 91日韩在线专区| 免费看日韩精品|