OFNHookProcOldStyle

Procedura OFNHookProcOldStyle cârlig este o funcție de apel invers definite de aplicarea sau definite de biblioteca, care este utilizată cu Deschidere și Salvare ca comune casetele de dialog. Funcția primește mesaje sau notificările destinate pentru procedura de caseta de dialog.

Tip LPOFNHOOKPROC definește un indicator pentru această funcție de apel invers. OFNHookProcOldStyle este un substituent pentru numele funcției definită de aplicarea sau definite de biblioteca.

Dacă specificați pavilion OFN_EXPLORER atunci când creați o Deschidere sau Salvare ca comune casetă de dialog, și doriți o procedură cârlig, trebuie să utilizați o procedură de cârlig Explorer-stil OFNHookProc.

 (UINT OFNHookProcOldStyle de apel INVERS HWND  hdlg, / / ocupa în fereastra de caseta de dialogUINTuiMsg / / mesaj identificatorWPARAMwParam, / / mesaj parametruLPARAMlParam / / mesaj parametru);
 

Parametrii

hdlg
Mâner fereastra caseta de dialog Deschidere sau Salvare ca , pentru care este destinat mesajul.
uiMsg
Identifică mesajul primite.
wParam
Specifică informații suplimentare despre mesajul. Sensul exact depinde de valoarea parametrului uiMsg .
lParam
Specifică informații suplimentare despre mesajul. Sensul exact depinde de valoarea parametrului uiMsg .

Dacă parametrul uiMsg indică mesajul WM_INITDIALOG , lParam este un indicator spre o structură OPENFILENAME care conțin valorile specificate când caseta de dialog comune a fost creat.

Valorile întroarse

Dacă procedura cârlig returnează zero, regimul caseta de dialog implicită procesează mesajul.

Dacă procedura cârlig returnează o valoare nenul, regimul caseta de dialog implicită ignoră mesajul.

Observații

Atunci când utilizați funcțiile GetOpenFileName sau GetSaveFileName pentru a crea un stil vechi Deschidere sau Salvare ca caseta de dialog, aveți posibilitatea să oferiți o procedură de cârlig OFNHookProcOldStyle . Pentru a activa regimul de cârlig, utilizarea OPENFILENAME structura care ați trecut la funcția de crearea dialog. Specificați indicatorul pentru a cârlig procedura membru lpfnHook și specificați pavilion OFN_ENABLEHOOK membru steaguri.

Regimul caseta de dialog implicită procesează mesajul WM_INITDIALOG înainte de a trece la regimul cârlig. Pentru toate alte mesaje, procedura cârlig primește primul mesaj. Apoi, valoarea returnată de procedura cârlig determină dacă procedura de dialog implicită procesează mesajul sau se ignoră.

Dacă procedura cârlig procesează mesajul WM_CTLCOLORDLG, aceasta trebuie să returneze un mâner de pensulă valabile pentru pictura fundal din caseta de dialog. În general, dacă procedura cârlig procesele orice mesaj WM_CTLCOLOR *, aceasta trebuie să returneze un mâner de pensulă valabile pentru pictura fundal controlului specificat.

Nu apela funcția EndDialog din procedura de cârlig. În schimb, procedura cârlig puteți apela funcția PostMessage pentru a publica un mesaj WM_COMMAND cu valoarea IDABORT la procedura de caseta de dialog. IDABORT de înregistrare se închide caseta de dialog și provoacă funcția de caseta de dialog pentru a întoarce FALSE. Dacă aveți nevoie să știți ce procedura cârlig închis caseta de dialog, trebuie să furnizați propriul mecanism de comunicare între procedura cârlig și aplicația.

Puteți subclasă controalele standard din caseta de dialog comune. Cu toate acestea, procedura comună de caseta de dialog poate, de asemenea, subclasă controalele. Din acest motiv, ar trebui să subclasă controale atunci când procedura dvs. cârlig procesează mesajul WM_INITDIALOG. Acest lucru asigură că vă procedura subclasă primește mesajele de control specifice înainte de procedura subclasă prin procedura de caseta de dialog.

QuickInfo

nbsp; Windows &NT: necesită versiunea 3.1 sau mai târziu.
Windows:Necesită Windows 95 sau o versiune ulterioară.
Windows CE:Neacceptat.
Antet:A declarat în commdlg.h.
Import Biblioteca:Definite de utilizator.

A se vedea, de asemenea

Comune Dialog Box biblioteca prezentare generală, funcții comune de caseta de Dialog, GetOpenFileName, GetSaveFileName, OFNHookProc, OPENFILENAME, WM_INITDIALOG

Index