Cursorposition ändern



  • Hallo Leute,
    ich hab da mal ne Frage.
    Also ersteinmal das Problem:
    Ich Habe Einen Ramen für ein Spiel aus normalen Ascii-Zeichen programmiert, also nix grafisches oder so. in dieses Spielfeld soll ich nun zufallsmäßig andere Ascii-Zeichen reinsetzen.
    Das Problem ist jetzt, dass das Programm selbstverständlich die Zeichen unter das Spielfeld setzt. Ich muss also den Cursor ersteinmal wieder auf die Ausgangsposition zurücksetzen.
    Und die Frage: Wie macht man das?

    Ich würd mich freuen, wenn mir möglichst schnell jemand antworten könnte...danke!



  • Du kannst dir gotoxy () nachbauen, indem du auf die WinAPI zugreifst:

    #include <windows.h>
    void gotoxy(int x, int y)
    {
     HANDLE hConsoleOutput;
     COORD dwCursorPosition;
     dwCursorPosition.X = x;
     dwCursorPosition.Y = y;
     hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE);
     SetConsoleCursorPosition(hConsoleOutput,dwCursorPosition);
    }
    

    Anwendung der Funktion:

    gotoxy (4,8) // Cursor auf die vierte Stelle der achten Zeile setzen.
    

    MfG mikey.



  • Also ich denk mal du arbeitest mit printf();
    Also wie man manuell die Cursor Position verschiebt weis ich nicht,ich glaub auch das dass gar nicht geht. Aber eine Möglichkeit ist den kompletten bildschirm zu löschen mit system("cls");

    Bibliothek <stdlib.h> wird glaub ich benötigt.

    Nur hast du dann ein kleines Flackern was sicherlich unschön ist. Also falls einer von euch wirklich weis wie man den Curser manuell verschiebt dann wird ich das auch gern wissen!



  • Super, das hat mir geholfen. Danke!



  • Dieser Thread wurde von Moderator/in Tim aus dem Forum ANSI C in das Forum DOS und Win32-Konsole verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten