Можно ли обновить две строки текста одновременно, используя что-то вроде CR? (C ++) - PullRequest
0 голосов
/ 05 января 2010

Сейчас у меня есть консольное приложение, над которым я работаю, которое должно отображать и обновлять информацию для консоли через заданный интервал. У меня проблема с возвратом каретки, я могу обновлять только одну строку текста за раз. Если я использую новую строку, старая строка больше не может быть обновлена ​​с помощью возврата каретки.

Что я могу сделать здесь?

Ответы [ 3 ]

5 голосов
/ 05 января 2010

Возможно, вам удастся найти вариант библиотеки curses , который работает на вашей платформе.

1 голос
/ 05 января 2010

Правильный ответ - использовать библиотеку проклятий, упомянутую Марком.Но если вы работаете в Unix-подобных системах и не можете быть обеспокоены проклятиями, то быстрое и грязное решение - напрямую распечатать escape-последовательности vt100:

http://ascii -table.com /ansi-escape-sequence-vt-100.php

Я часто делаю это, особенно на языках сценариев, которые не имеют привязки curses.

0 голосов
/ 05 января 2010

Это действительно уродливое решение, но в крайнем случае вы всегда можете просто полностью очистить консоль, а затем перепечатать все. Эта стратегия в некоторых случаях выглядит немного безобразно; это может заставить вещи выглядеть мигающими.

...