Locate Implementation



  • Hallo!

    Ich suche eine Möglichkeit die aktuelle Schreibposition in einer Konsolenapplikation zu ändern bzw. überhaupt zu setzen. Und zwar gab es z.B. damals in QBasic den Befehl Locate x, y der das tat. So etwas versuche würde ich gerne in C++ implementieren. Weiß aber leider nicht wie. Es geht nämlich unter anderem um eine prozentuale Fortschrittsinformation im Dosfenster anzuzeigen. Jedoch finde ich keinen anderen Weg als immer

    system("cls")
    

    und dann alles neuzuschreiben. Ist meiner Meinung nach aber sehr umständlich und unelegant.

    Gruß HaJo



  • ist betriebssystem-abhängig

    unter win32 gibts glaub ich gotoxy oder so ähnlich, schau mal ins DOS-Forum, da müste dazu was stehen



  • Maxi schrieb:

    ist betriebssystem-abhängig

    Genau, ich dachte auch ich hätte geschrieben das es sich um Windows handelt.
    Danke für die DOS Info. Werde jetzt SetConsoleCursorPosition benutzen. Allerdings hätte ich gerne noch eine Funktion, die mir die aktuelle Position zurückgibt? Kennt jemand eine solche?

    HaJo



  • http://ic.sidewindershome.net

    // sieht circa so aus intern:
    CONSOLE_SCREEN_BUFFER_INFO csbi;
    GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE),&csbi);
    return csbi.dwCursorPosition.X; // oder so ähnlich
    

    MfG SideWinder


Anmelden zum Antworten