| |
|
|
Christian Eichler | Ich habe nun folgenden Code: KompilierenMarkierenSeparieren#define STRICT
#include <windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
const char Ueberschrift[] = "BlaBlaBla";
HINSTANCE hInst;
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
{
hInst = hInstance;
MSG msg;
HWND WHandle;
WNDCLASS WClass = {CS_VREDRAW | CS_HREDRAW,WndProc,0,0,hInstance,LoadIcon(NULL,IDI_APPLICATION),LoadCursor(NULL,IDC_ARROW),(HBRUSH) COLOR_BACKGROUND,"","WClass"};
RegisterClass(&WClass);
WHandle = CreateWindow("WClass",Ueberschrift,WS_SYSMENU,CW_USEDEFAULT,CW_USEDEFAULT,640,480,NULL,NULL,hInstance,NULL);
ShowWindow(WHandle,iCmdShow);
UpdateWindow(WHandle);
while (GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc(HWND WHandle, UINT message, WPARAM wParam, LPARAM lParam)
{
char Taste[50] = {0};
switch (message)
{
case WM_KEYDOWN:
itoa(lParam,Taste,50);
MessageBox(0,Taste,"",0);
break;
case WM_DESTROY:
{
PostQuitMessage(0);
return 0;
}
}
return DefWindowProc(WHandle, message, wParam, lParam< lass=s2>);
}
Wie ihr seht, wandel ich zur Zeit lParam in einen String um, um auszulesen, welche Taste gerade gedrückt wurde. Allerdings scheint mir das ja nicht die gerade optimale Lösung. Eigentlich möchte ich die Bits einzeln auslesen, allerdings gelingt mir das nicht.
Ich hab die Tabelle welcher Bit was bedeutet, aber wie les ich das aus ?
BitsMeaning 16-23Scan code. 24Extended-key flag. Distinguishes some keys on an enhanced keyboard. 25"Dont care" bit. The application calling this function sets this bit to indicate that the function should not distinguish between left and right CTRL and SHIFT keys, for example.
Ich bedank ich schon mal im Voraus.
Grüße Christian |
|
|
| Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6 | 10.11.2008 ▲ |
|
|
|
|
Jac de Lad | Falsches Foro!!! |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 10.11.2008 ▲ |
|
|
|
|
Christian Eichler | Ja, das kommt mir auf eine gewisse Art und Weise auch grad. Vll. bekomm ich ja doch ne (sinnvolle) Antwort ? |
|
|
| Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6 | 10.11.2008 ▲ |
|
|
|
|
| Nimm hi- und loword, bei itoa als Basis 50 macht mir hingegen etwas Sorgen. Bits schubsen mit << bzw. >>.
Thema verschoben. |
|
|
| |
|
|
|
Christian Eichler | Ich sagte ja schon, dass itoa hier eben nicht gut ist
Ich hab das Problem eben auf andre Art und Weise gelöst. Ich überprüf einfach nur wParam, lParam hatte ich eh nur per eine Taste gebraucht, und das hat auch nicht so funktioniert, wie es das hätte tun solln.
Wieso ich nicht früher auf wParam gekommen bin, und immer so fixiert auf lParam war ...
Naja, trotzdem danke euch allen
Grüße Christian |
|
|
| Debian Lenny, Intel Celeron 2,8 Ghz, 768 MB Ram && Win XP Pro, Intel C2D 1,66Ghz, 2 GB Ram ... PROFAN² 6.6 | 10.11.2008 ▲ |
|
|
|
|
Sebastian König | Ciao,
leider bin ich gerade auf dem Sprung nach Beijing und habe nichtmal Zeit, den Beitrag komplett zu lesen. Ich kümmere mich darum, wenn ich zurück bin (also nächste Woche).
MfG
Sebastian
P.S.: Geht es überhaupt um Profan2Cpp? |
|
|
| |
|
|
|
| @Sebastian: Nein nur indirekt, "Problem" ist gelöst. |
|
|
| |
|
|
|
Sebastian König | iF
@Sebastian: Nein nur indirekt, "Problem" ist gelöst. Ok, sehr gut. |
|
|
| |
|
|