Dostosowywanie Znajdź lub Zamień okno dialogowe

Aby dostosować pojawia się okno dialogowe Znajdowanie lub Zamienianie , można użyć jednej z następujących metod:

Tworząc okno dialogowe Znajdowanie lub Zamienianie można ustawić flagi w członek flag struktury FINDREPLACE , aby ukryć lub wyłączyć którykolwiek z formantów opcja wyszukiwania. Na przykład można ustawić flagę FR_NOMATCHCASE, wyłącz pole wyboru Uwzględnij wielkość liter lub ustawić flagę FR_HIDEMATCHCASE, aby ją ukryć.

Można zapewnić niestandardowy szablon okno dialogowe Znajdowanie lub Zamienianie , na przykład, jeśli chcesz dołączyć dodatkowe kontrole, które są unikatowe dla aplikacji. FindText i ReplaceText funkcji należy użyć szablonu niestandardowego zamiast domyślnego szablonu.

    Aby zapewnić szablonu niestandardowego okna dialogowego Znajdź lub Zamień
  1. Utworzyć niestandardowy szablon modyfikując domyślny szablon określony w FINDTEXT.DLG pliku. Identyfikatory kontroli używane domyślnie znaleźć lub zastąpić szablon okno dialogowe są zdefiniowane w DLGS.H pliku.
  2. Użyj struktury FINDREPLACE aby włączyć szablon w następujący sposób:

Okno dialogowe Znajdowanie lub Zamienianie można zapewnić procedura haka FRHookProc . Procedura haka może przetwarzać wiadomości wysłane do okna dialogowego. Jeśli niestandardowy szablon jest używane do definiowania dodatkowej kontroli, należy zapewnić procedura haka przetwarzania danych wejściowych dla formanty.

    Aby włączyć procedurę haka okna dialogowego Znajdź lub Zamień
  1. Ustawić flagę FR_ENABLEHOOK Członkowskich flag struktury FINDREPLACE.
  2. Określ adres procedura haka członka lpfnHook.

Po przetworzeniu komunikatu WM_INITDIALOG , procedury pole dialogowe wysyła wiadomość WM_INITDIALOG procedura haka. Parametr fikcyjnymi tej wiadomości jest wskaźnik do struktury FINDREPLACE , używane do inicjowania okno dialogowe.

Jeśli procedura haka zwraca wartość FALSE, w odpowiedzi na komunikat WM_INITDIALOG, okno dialogowe nie zostanie wyświetlona w chyba że procedura haka wyświetla go. Aby to zrobić, najpierw wykonać inne operacje programu paint, a następnie wywołać ShowWindow i UpdateWindow funkcji. Poniższy kod zawiera przykład

/ / W odpowiedzi na WM_INITDIALOG wróciliśmy FALSE. 
/ / Możemy wykonanych innych operacji farby. 
/ / Teraz wyświetlane okno dialogowe. 
ShowWindow (hDlg, SW_SHOWNORMAL); 
UpdateWindow(hDlg) 

 

Index