Filou Geschrieben 18. Mai 2006 Geschrieben 18. Mai 2006 Guten Morgen! Ich frage in meinem Programm über die Funktion PreTranslateMessage(MSG* pMsg) ab, ob eine Taste gedrückt wurde. BOOL CPatient::PreTranslateMessage(MSG* pMsg) { if (pMsg->message == WM_KEYDOWN) //Prüfen ob eine Taste gedrückt wurde { if(pMsg->wParam == 27) //WENN DIE ESC TASTE GEDRÜCKT WURDE Ich möchte jetzt gerne aus einem Thread heraus einen Tastendruck simmulieren. Ich dachte das geht recht einfach, aber wParam ist unbekannt. CPatient *pWnd; pWnd=(CPatient*)pParam; int iCount = 0; while (iCount < 10) //ENDLOS { pWnd->PostMessage(WM_KEYDOWN, 0, 0); pWnd->pMsg->wParam = 116;//<- GEHT NICHT! wParam unbakannt. Ich habe gesehen dass pMsg in der Funktion PreTranslateMessage definiert wird. Also kann ich auserhalb der Funktion nicht darauf zugreifen?! Aber irgendwie muss es doch gehen, so zu tun als sei eine Taste gedrückt worden, oder? Zitieren
Kratzy974 Geschrieben 22. Mai 2006 Geschrieben 22. Mai 2006 Vielleicht hab ich irgendwas übersehen, aber versuch es doch mal mit PostMessage(WM_KEYDOWN, 116, 0); immerhin ist der zweite Parameter das übergebene wParam, und der dritte der lParam. Kristian Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.