CFileDialog

Klasa CFileDialog hermetyzuje okno dialogowe plik wspólnego systemu Windows. Typowych okien dialogowych pliku zapewnia łatwy sposób wykonania otwieranie pliku i pliku Zapisz jako okno dialogowe pola (jak również innych okien dialogowych Wybieranie pliku) w sposób zgodny z normami systemu Windows.

CFileDialog „tak jak jest"można użyć konstruktora pod warunkiem lub pochodną klasy okno dialogowe CFileDialog i zapisu konstruktora do własnych potrzeb. W każdym z tych przypadków tych okien dialogowych postąpi jak standardowy Microsoft Foundation klasy oknach dialogowych w ponieważ pochodzą one z klasy CCommonDialog.

Aby użyć obiektu CFileDialog , należy najpierw utworzyć obiekt za pomocą konstruktora CFileDialog . Po oknie dialogowym został wybudowany, można ustawić lub modyfikować wartości w strukturze m_ofn zainicjować wartości lub państw formantów okna dialogowego. Struktura m_ofn jest typu OPENFILENAME. Aby uzyskać więcej informacji, zobacz OPENFILENAME struktury w dokumentacji zestawu Win32 SDK.

Po inicjowanie formantów okna dialogowego, wywołać funkcję Państwa DoModal , aby wyświetlić okno dialogowe i umożliwia użytkownikowi wprowadź ścieżkę i. DoModal zwraca, czy wybranych przez użytkownika, przycisk OK (IDOK) lub przycisk Anuluj (IDCANCEL).

Jeśli DoModal zwraca IDOK, można jedną z funkcji publicznych Państwa CFileDialogdo pobrania informacji o wprowadzania przez użytkownika.

CFileDialog zawiera kilku członków chronionych, które umożliwiają zrobić niestandardową obsługę udział naruszeń, sprawdzenia poprawności nazwy pliku, a powiadomienie o zmianie pola listy. Członkowie ci chronione są funkcje wywołania zwrotnego, które większość aplikacji nie trzeba użyć, ponieważ domyślna obsługa odbywa się automatycznie. Wiadomości Mapa wpisy te funkcje nie są konieczne, ponieważ są one standardowe funkcje wirtualnych.

Można użyć funkcji systemu Windows CommDlgExtendedError , aby ustalić, czy wystąpił błąd podczas inicjowania okna dialogowego i aby dowiedzieć się więcej o błędzie.

Zniszczenie CFileDialog obiektów odbywa się automatycznie. Nie jest konieczne do wywołania CDialog::EndDialog.

Aby umożliwić użytkownikowi zaznaczanie wielu plików, należy ustawić flagę OFN_ALLOWMULTISELECT przed wywołaniem metody DoModal. Należy podać własne buforu filename, aby pomieścić zwracane listy wielu nazw plików. Czy to poprzez zastąpienie m_ofn.lpstrFile wskaźnika do buforu, który przydzielono, po konstruowania CFileDialog, ale przed wywołaniem metody DoModal. Ponadto należy ustawić m_ofn.nMaxFile z określonej liczby znaków w buforze wskazywanego przez m_ofn.lpstrFile.

CFileDialog opiera się na COMMDLG.Plik DLL, dostarczany z systemem Windows w wersji 3.1 i później.

Nowa klasa pochodzi od CFileDialog, należy użyć mapy wiadomości do obsługi komunikaty. Rozszerzenie obsługi wiadomości domyślnie, pochodną klasy CWnd, dodać mapę wiadomości z nową klasą i zapewniają funkcje składowe dla nowych wiadomości. Nie musisz dostarczyć funkcji haka, aby dostosować okna dialogowego.

Aby dostosować okna dialogowego, pochodną klasy CFileDialog, dostarczają szablonu niestandardowe okna dialogowe i dodać mapę wiadomości do przetwarzania komunikatów powiadomienia z rozszerzonej kontroli. Komunikaty nieprzetworzonych powinien zostać przekazany do klasy podstawowej.

Dostosowywanie funkcji hak nie jest wymagane.

Aby uzyskać więcej informacji na temat używania CFileDialog, zobacz Wspólne okno dialogowe klas w Visual C++ Programmer's Guide.

# include lt;afxdlgs.h>

Czło&nkowie klasy |nbsp; Klasa podstawowa | Wykres hierarchii

Index