PPC - Call a System-Defined Dialog Box

From YYpBD's MediaWiki

Jump to: navigation, search

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp)
{
    LRESULT   lResult = TRUE;
    TCHAR   szFile[MAX_PATH] = TEXT("\0");
    OPENFILENAME   ofn;
    
    memset( &(ofn), 0, sizeof(ofn));
    ofn.lStructSize   = sizeof(ofn);
    ofn.hwndOwner = hwnd;
    ofn.lpstrFile = szFile;
    ofn.nMaxFile = MAX_PATH;  
      
    switch(msg)
    {
    case WM_COMMAND:
    switch (GET_WM_COMMAND_ID(wp, lp))
    {
    case IDM_OPENPRJ:
        ofn.lpstrTitle = TEXT("Open Folder");
        // Open project dialog for Pocket PC.
        ofn.Flags = OFN_PROJECT;      
        if (GetOpenFileName(&ofn))  
        MessageBox(NULL, ofn.lpstrFile, TEXT("Info"), MB_OK)
        // Add the opening project code here.
        break;

    case IDM_OPENFILE:
        ofn.lpstrFilter = TEXT("All (*.*)\0*.*\0");  
        ofn.lpstrTitle = TEXT("Open File");
        ofn.Flags = OFN_EXPLORER;
        if (GetOpenFileName(&ofn))  
            MessageBox(NULL, ofn.lpstrFile, TEXT("Info"), MB_OK)
        // Add the opening file code here.
        break;

    case IDM_SAVEFILE:
        ofn.lpstrFilter = TEXT("Text (*.txt)\0*.txt\0");  
        ofn.lpstrTitle = TEXT("Save File As");
        ofn.Flags = OFN_HIDEREADONLY;
        ofn.lpstrDefExt = TEXT("txt");
        if (GetSaveFileName(&ofn))  
            MessageBox(NULL, ofn.lpstrFile, TEXT("Info"), MB_OK)
        // Add saving file code here.
        break;

    case IDM_PROPERTY:
        // Use GetOpenFileName to choose a file, and then use
        // GetSaveFileName to display its properties.
        ofn.lpstrFilter = TEXT("All (*.*)\0*.*\0");  
        ofn.lpstrTitle = TEXT("File Property");
        ofn.Flags = OFN_EXPLORER;
        if (GetOpenFileName(&ofn))   {
            ofn.lpstrTitle = TEXT("Property");
            // Open property dialog for Pocket PC.
            ofn.Flags = OFN_PROPERTY;  
            GetSaveFileName(&ofn);
        }
        break;

    default:
        return DefWindowProc(hwnd, msg, wp, lp);
    }
    break;
.
.

맞춤검색