Linux – визуальное перемещение курсора консолиC++

Программы на C++. Форум разработчиков
Anonymous
Linux – визуальное перемещение курсора консоли

Сообщение Anonymous »

В настоящее время я разрабатываю интерфейс CLI для Linux, и по разным причинам я не могу использовать ncurses. Я использую исключительно C++ и фреймворк Qt.

Поэтому, чтобы иметь удобный интерфейс, мне приходится запускать этот цикл getch в отдельном потоке:< /p>

https://stackoverflow.com/a/912796/3605689

Что по сути означает, что я должен реализовать все базовые функции (например, Backspace) самостоятельно. Я уже реализовал завершение команд и историю команд (например, когда вы нажимаете клавишу Tab или стрелку вверх/вниз в Linux), но я не могу понять, как реализовать стрелку влево/вправо (то есть поиск по вводу).

Обычно я реализую это так: при каждом гече, не равном -1, я проверяю, нажал ли пользователь специальную клавишу (которая каким-то образом изменяет вводимый текст). Затем я очищаю стандартный вывод, используя следующую функцию:

Код: Выделить всё

void inputobject::clear_line(int nletters)
{
QTextStream(stdout) 

Подробнее здесь: [url]https://stackoverflow.com/questions/38770996/linux-moving-the-console-cursor-visual[/url]

Вернуться в «C++»