laubi Geschrieben 15. Juni 2010 Teilen Geschrieben 15. Juni 2010 hallo erstmals, habe unter "suchen" leider kein befriedigendes ergebniss bekommen und auch google konnte mit nicht weiterhelfen. ich möchte ein Programm schreiben das die x,y-Koordinaten auf meinem Desktop in 2 parametern zurückgibt Wichtig: ich bin noch kompletter neuling, also es wäre mir leichter ihr benutzt c, nur wenn es keinen anderen weg als c++-code gibt und bitte erklärung dazu, damit ich es auch in zukunft benutzen kann und nicht nur sinnlos einen code kopiere Kurzes Beispiel: [COLOR="Lime"] #include <windows.h> #include <stdio.h>[/COLOR] [COLOR="Navy"]void[/COLOR] funktion([COLOR="Navy"]int[/COLOR] x*, [COLOR="Navy"]int[/COLOR] y*); [COLOR="DarkGreen"]/*Die Funktion soll die x,y-koordinaten des Cursers zurückgeben in die 2 parameter */[/COLOR] [COLOR="Navy"]int[/COLOR] main() { [COLOR="Navy"]int[/COLOR] x,y; [COLOR="Magenta"]do[/COLOR] { funktion(&x,&y); [COLOR="Magenta"]printf[/COLOR]("(%d|%d)\n\n",x,y); [COLOR="Magenta"]Sleep[/COLOR](500); }[COLOR="Magenta"]while[/COLOR](x!=0||y!=0); [COLOR="Magenta"]return[/COLOR] 0; } [COLOR="Navy"]void[/COLOR] funktion(int x*, int y*) { [COLOR="DarkGreen"] //ich wüsste gerne was hier hineinkommt[/COLOR] } das programm sollte folgendes machen: alle halbe sekunden gibt es die x-y-koordinaten aus..fertig aber die dazugehörige funktion weiß ich nicht. Ich benutze zum kompilieren kleinerer programme dev-c++ da man nicht gleich ein neues projekt eröffnen muss wenn es kleiner ist. sonst nehme ich visual c++ 2008 express edition Betriebssystem: windows7 lg laubi Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
laubi Geschrieben 16. Juni 2010 Autor Teilen Geschrieben 16. Juni 2010 zur vollständigkeit die lösung: #include <windows.h> #include <stdlib.h> #include <stdio.h> using namespace std; int main() { POINT mPos; while(1) { Sleep(1); GetCursorPos(&mPos); printf("X: %d Y: %d\n",mPos.x,mPos.y); system("cls"); //cout << "\nX:" << mPos.x << " Y:" << mPos.y << endl; } return 0; } aber nun möchte ich, so eitel ich bin..das alles nur angezeigt wird, wenn ich mit der maus klicke, und es in einen array abspeichere. das abspeichern ist null-problem, aber das klicken schon, also ich nehe einfach das programm, minimiere es und klicke in einem externen programm ein mal, und die koordinaten sollen in dem 2-dimensionalen array gespeichert werden... wie mache ich es das die schleife nur weitergeht bis ich 1 mal irgentwohin geklickt habe? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
TDM Geschrieben 16. Juni 2010 Teilen Geschrieben 16. Juni 2010 schöner Performancebremser. Ich glaub du wirst da nicht um einen Mouse-Hook rumkommen. (Mausnachrichten via CALLBACK verarbeiten) Wenn du aber Glück hast, funktioniert PeekMessage. Da Standard-C hier nicht wirklich weiterhilft und du eh schon auf die WINAPI zugreifst, vielleicht hilft dir das ja: About Messages and Message Queues Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
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.