Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A subclassificação é uma técnica que permite que um aplicativo intercete e processe mensagens enviadas ou postadas em uma janela específica antes que um procedimento de janela tenha a chance de processá-las. O sistema operativo converte automaticamente as mensagens na forma de página de código do Windows (ANSI) ou na forma Unicode , dependendo da forma da função que fez a subclassificação do procedimento da janela.
A seguinte chamada para a função SetWindowLongA sobrescreve o procedimento de janela atual associado à janela identificada pelo parâmetro hWnd. Como alternativa, um aplicativo pode usar SetWindowLongPtrA. O novo procedimento de janela NewWndProc, receberá mensagens com texto no formato de página de código do Windows.
OldWndProc = (WNDPROC) SetWindowLongA(hWnd,
GWL_WNDPROC, (LONG)NewWndProc);
Quando NewWndProc terminar de processar uma mensagem, ele usa a função CallWindowProc da seguinte forma para passar a mensagem para OldWndProc.
CallWindowProc(OldWndProc, hWnd, uMessage, wParam, lParam);
Se OldWndProc foi criado com um estilo de classe UNICODE, as mensagens são traduzidas do formato da página de código do Windows recebido por NewWndProc em Unicode.
Da mesma forma, uma chamada para o SetWindowLongW ou função SetWindowLongPtrW subclasses do procedimento de janela atual com um procedimento de janela que espera mensagens de texto Unicode. A tradução de mensagens, se necessário, é realizada durante o processamento da função CallWindowProc.
Para obter mais informações sobre subclassificação, consulte Window Procedures.
Tópicos relacionados