Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 02.11.2003, 18:45 Titel: Mauskordinaten beim Fenster |
|
|
hi,
ich hab folgendes Problem und zwar
code ich einen Editor im Fenstermodus und
berechne die Felder dort mit
Code: |
spielfeld[mouseY / Feldanzahl][mouseX / Feldanzahl]
|
mouseY und ...X ermittel ich per Windows MouseMove...
allerdings passiert nun folgendes
und zwar ist die erste Reihe Y ja in ordnung aber
zunehmend mit dem Y reihen wird der Feldposition ungenauer
bis irgendwann ein MINUS eine Y Reihe beim klicken gezeichnet wird...
wie kann ich nun das alles verhindern ?
ich habs schon irgendwo ein Thread mit Fullscreen Kordinaten in
Fensterkordinaten umwandeln entdeckt, allerdings hat dies auch nix geholfen..
plz help _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
LeeDiGer Super JLI'ler
Anmeldedatum: 31.08.2003 Beiträge: 366 Wohnort: Duisburg Medaillen: Keine
|
Verfasst am: 02.11.2003, 19:52 Titel: |
|
|
Das Problem hatte ich auch. Ich hab einfach den Mousecursor versteckt und einfach nen eigenen per Sprite zeichnen lassen. da hat man wenigstens die richtigen koordinaten. ne andere möglichkeit hab ich auch nicht entdeckt. _________________ Kein Rückzug! Kein Aufgeben! |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 02.11.2003, 21:37 Titel: |
|
|
das würde im meinem fall auch nciht viel bringen.. _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 03.11.2003, 14:30 Titel: |
|
|
hast du schon ausprobiert ClientToScreen() nach der Ermittlung der Koordinaten aufzurufen. Ich hab das Problem auch gehabt, wie ich mir aus lParam in einer WindowsMessage die Position rausholen wollte...mit ClientToScreen() hab ich dann die richtigen Koordinaten bekommen.
Allerdings war mir das dann zu blöd, jetzt ruf ich einfach GetCursorPos() auf...da funkt das ohne wenn und aber... |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 03.11.2003, 17:31 Titel: |
|
|
GetCursorPos(Adresse Auf eine Struktur)
könntest du mir das genauer erklären ? _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 03.11.2003, 18:58 Titel: |
|
|
hab zwei pointer gemacht
wie in einem anderen Thread den ich hier gesehn hab:
GetCursorPos(&pAllgemein);
ClientToScreen(hWnd,&pFenster);
aber mit beiden bekomme ich nicht die richtige positionen hin
auch mit
GetCursorPos(&pAllgemein);
pFenster = pAllgemein;
ClientToScreen(hWnd,&pFenster);
geht es auch net _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 03.11.2003, 21:28 Titel: |
|
|
Ähm...solltest du nicht vielleicht für "spielfeld" in die erste eckige Klammer die X- und in die zweite die Y-Koordinaten hineinschreiben?
Statt:
Code: | spielfeld[mouseY / Feldanzahl][mouseX / Feldanzahl] |
das hier:
Code: | spielfeld[mouseX / Feldanzahl][mouseY / Feldanzahl] |
_________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 04.11.2003, 10:18 Titel: |
|
|
soweit ich mich erinnern kann (kann jetzt nicht nachschauen) verlangt GetCursorPos einen Pointer auf einen Point.
also einfach:
Code: |
POINT p;
GetCursorPos(&p);
int x = (int)p.x;
int y = (int)p.y;
|
ClientToScreen() brauchst du dann nicht aufrufen, das brauchst du nur wenn du die Koordinaten per WindowsMessage abrufst. |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 04.11.2003, 18:56 Titel: |
|
|
Hast du auch wirklich bei ClientToScreen(hWnd,&pFenster); das hWnd deines Programmfensters und nicht zufälligerweise das des Desktops oder etwas anderes genommen ? _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
|