Ich entwickle eine Anwendung für ein POCKET PC 2003 (Windows CE 4.2) Gerät mit C++ und nativem WINAPI (also kein MFC oder ähnliches). Darin habe ich eine Einzeilige Bearbeitungssteuerung, die Teil des Hauptfensters ist (nicht ein Dialog); daher ist das normale Verhalten von Windows beim Drücken von ENTER, nichts zu tun, sondern zu piepen.
Ich habe das Fensterverfahren für die Bearbeitungssteuerung untergeordnet, um das Standardverhalten mit folgendem Code zu überschreiben:
LRESULT CALLBACK Gui::ItemIdInputProc( HWND hwnd, UINT message, WPARAM wParam,
LPARAM lParam ) {
switch ( message ) {
case WM_KEYDOWN :
switch ( wParam ) {
case VK_RETURN :
addNewItem();
return 0;
}
}
return CallWindowProc( oldItemIdInputProc_, hwnd, message, wParam, lParam );
}
Dies führt zum gleichen Verhalten wie das Drücken der 'OK'-Schaltfläche.
Nun zum aktuellen Problem: Dieses Fensterverfahren überschreibt das Standardverhalten des Piepsens nicht. Ich vermute, dass es andere Nachrichten oder Nachrichten gibt, die ausgelöst werden, wenn ENTER gedrückt wird, die ich nicht erfassen kann; Ich kann einfach nicht herausfinden, welche. Ich möchte wirklich verhindern, dass das Gerät piept, da es andere Geräusche durcheinander bringt, die in bestimmten Situationen abgespielt werden, wenn eine Kollision mit einem Element auftritt, und es ist entscheidend, dass der Benutzer darüber informiert wird.
Vielen Dank im Voraus.