Veröffentlicht 18. Mai 200619 j 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?
22. Mai 200619 j 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
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.