You are not logged in.

  • Login

1

Thursday, June 28th 2007, 6:18pm

C++ Mouse

hi ich hab ein problem bei meinem game wie kann ich feststellen wo die maus sich gerade befindet??? bzw ob in den bereich geklickt wurde(das könnt ich ja via Accelarators machen aber dazu bräuchte ich die aus position)

hatt wer ne ahnung wo das gespeichert wird?

2

Thursday, June 28th 2007, 6:20pm

openGL / GLUT ?
SDL?
DirectX?
OSAPI?

3

Thursday, June 28th 2007, 6:26pm

DirectX

4

Thursday, June 28th 2007, 6:44pm

und noch ne frage wenn ich das game im vollbildmodus starte habe ich am rand trotzdem noch die ränder vom fenster(eigene Grafiken gehen zwar drüber aber wenn ich mit der maus drüber fahre ändert er ja dencursor hat da noch wer ne lösung?

5

Thursday, June 28th 2007, 6:47pm

Mein Freund hat das wohl mit WM_MOUSEMOVE gemacht.

C Quellcode

1
2
3
4
case WM_MOUSEMOVE:
        g_MouseX = LOWORD(lparam);
        g_MouseY = HIWORD(lparam);
        break;


Zu den Einschränkungen der Methode kann ich nichts sagen, DirectX/Win32 ist nicht meine Aufgabe ;)

6

Thursday, June 28th 2007, 6:49pm

ok danke werd ich gleich nachher mal testen

7

Thursday, June 28th 2007, 7:35pm

Hi,
wie wird die denn im Beispiel aufgerufen? lparam ist ja bestimmt nur der Parameter einer Funktion.

Bei OpenGL ist das ganz einfach...

C Quellcode

1
2
3
4
5
6
7
void mouse( int button, int state, int x, int y)
{
 printf("Mausposition (%d,%d)", x, y);
}
 
// Aufruf
glutMouseFunc(mouse);


Aber vielleicht äußert sich Blue nochmal - der macht DirectX.

8

Thursday, June 28th 2007, 7:37pm

das ist der ganz normale W32 Callback-handler ;)
Überhaupt kein DirectX beteiligt

9

Tuesday, July 17th 2007, 6:42pm

hmm jetzt hab ich ein neues Problem wie kann ich checken ob die linke bzw. rechte maustaste geklcikt wurdE?

EDIT: habs schon geschafft

EDIT2: für die dies intressiert:

C Quellcode

1
2
case WM_LBUTTONDOWN: //LINKE
 case WM_RBUTTONDOWN: // RECHTE

10

Saturday, July 21st 2007, 12:32am

Keine Ahnung was für ein Game du machst, kann mit aber vorstellen, dass - je nach Game - der Windows-Standardmoushandler zu ungenau/grob/langsam ist. Wenn du ein Strategiespiel oder vom Speed ähnliches Game bastelst ist es wohl egal, bei einem Ego-Shooter oder Autorennen könnte es besser sein DirectInput zu verwenden, auch wenn es mehr Aufwand bedeutet.

Links:

http://www.gamedev.net/reference/list.asp?categoryid=24#152
http://msdn2.microsoft.com/en-us/library/bb206292.aspx
http://msdn2.microsoft.com/en-us/library/bb174606.aspx

11

Sunday, July 22nd 2007, 9:07pm

ne ist ein 2D strategispiel
soll so ähnlich werden wie warcraft(1&2)
also muss es ja da nicht so genau/schnell sein odeR?^^

Similar threads

Social bookmarks