Come elaborare la notifica di DTN_WMKEYDOWN
In questo argomento viene illustrato come elaborare una notifica di DTN_WMKEYDOWN . La gestione di questo codice di notifica consente al proprietario del controllo di fornire risposte specifiche alle sequenze di tasti all'interno dei campi di callback del controllo.
Informazioni importanti
Tecnologie
Prerequisiti
- C/C++
- Programmazione dell'interfaccia utente di Windows
Istruzioni
I controlli selezione data e ora (DTP) inviano il messaggio DTN_WMKEYDOWN per segnalare che l'utente ha digitato l'input in un campo di callback. Se si desidera emulare le stesse risposte da tastiera supportate per i campi DTP standard o fornire risposte personalizzate, l'applicazione deve includere il codice per gestire questa notifica.
L'esempio di codice C++ seguente è una funzione definita dall'applicazione che elabora la notifica di DTN_WMKEYDOWN .
Avviso di sicurezza: l'uso di lstrcmp in modo errato può compromettere la sicurezza dell'applicazione. Ad esempio, prima di chiamare lstrcmp nell'esempio di codice seguente, è necessario assicurarsi che le due stringhe siano con terminazione Null. Prima di continuare, vedere Considerazioni sulla sicurezza: Controlli di Microsoft Windows.
// DoWMKeydown increments or decrements the day of month according
// to user keyboard input.
void WINAPI DoWMKeydown(
HWND hwndDP,
LPNMDATETIMEWMKEYDOWN lpDTKeystroke)
{
int delta =1;
if(!lstrcmp(lpDTKeystroke->pszFormat,L"XX")){
switch(lpDTKeystroke->nVirtKey){
case VK_DOWN:
case VK_SUBTRACT:
delta = -1; // fall through
case VK_UP:
case VK_ADD:
lpDTKeystroke->st.wDay += (WORD) delta;
break;
}
}
}
Argomenti correlati