Personalizando a caixa de diálogo Substituir ou localizar

Para personalizar uma caixa de diálogo Localizar ou Substituir , você pode usar qualquer um dos seguintes métodos:

Quando você cria uma caixa de diálogo Localizar ou Substituir , você pode definir sinalizadores in a sinalizadores membro da estrutura FINDREPLACE para ocultar ou desativar qualquer um dos controles de opção de pesquisa. Por exemplo, você pode definir o sinalizador FR_NOMATCHCASE para desabilitar a caixa de seleção Diferenciar maiúsculas de minúsculas ou definir o sinalizador FR_HIDEMATCHCASE para escondê-lo.

Você pode fornecer um personalizado modelo para uma caixa de diálogo Localizar ou Substituir , por exemplo, se você quiser incluir controles adicionais que são exclusivos do seu aplicativo. FindText e ReplaceText funções usam o modelo personalizado no local do modelo padrão.

    Para fornecer um personalizado modelo para uma caixa de diálogo Localizar ou substituir
  1. Crie o modelo personalizado modificando o modelo padrão especificado no FINDTEXT.Arquivo de DLG. Os identificadores de Controlarar usado no padrão encontrar ou Substituir modelo de diálogo são definidos na DLGS.Arquivo H.
  2. Use a estrutura FINDREPLACE para habilitar o modelo de como segue:

Você pode fornecer um procedimento de gancho de FRHookProc para uma caixa de diálogo Localizar ou Substituir . O procedimento de gancho pode Processoar as mensagens enviadas para a caixa de diálogo. Se você usar um modelo personalizado para definir controles adicionais, você deve fornecer um procedimento gancho para processar a entrada para seus controles.

    Para habilitar um procedimento de gancho para uma caixa de diálogo Localizar ou substituir
  1. Definir o sinalizador FR_ENABLEHOOK in o sinalizadores membro da estrutura FINDREPLACE.
  2. Especifique o endereço do procedimento de gancho na lpfnHook membro.

Após processar a WM_INITDIALOG mensagem, o procedimento caixa diálogo envia uma mensagem WM_INITDIALOG para o procedimento gancho. O lParam parâmetro desta mensagem é um ponteiro para a estrutura FINDREPLACE usada para inicializar a caixa de diálogo.

Se o procedimento gancho retorna FALSE em resposta à mensagem WM_INITDIALOG, a caixa de diálogo não aparecerá a menos que o procedimento gancho exibe-lo. Para fazer isso, primeiro executar outras operações de pintura e, em seguida, chamar ShowWindow e UpdateWindow funções. O código a seguir fornece um exemplo

/ / Nós tiver retornado FALSE em resposta a WM_INITDIALOG. 
/ / Nós executou outras operações de pintura. 
/ / Agora podemos exibir a caixa de diálogo. 
ShowWindow (hDlg, SW_SHOWNORMAL); 
UpdateWindow(hDlg) 

 

Index