| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > отчистка за собой экрана(сrossplatform) |
| Автор: En_t_end 14.4.2006, 14:54 |
| Нужен наиболее простой в смысле количества команд процессору способ отчистки за собой области экрана. Вариант 1: Юзать clrscr() - Вариант 2: Юзать способ из MSDN, но тогда нарушается условие crossplatform. Вариант 3: С помошью ostream::tellp и ostream::seekp сначало определять область, изменяемую программой, сохранив её, сделать то что нужно, далее в сохраненную область(byte begin->byte end) записать ' ', далее вернуться на byte begin и совершить шаг отрисовки следующего элемента. Меня интересует, неужели вариант 3 - единственный ?, если да, то как не записывая ' ' можно отчистить байт ? Может есть какой-то быстрый способ сброса битов в состояние неопределенности, но так чтобы на экране не было конкретных символов ? |
| Автор: chaos 14.4.2006, 15:00 |
| я вот не в курсе, ESC-последовательности работают под виндой? под *nix точно все работает вот уже не раз говорил http://forum.vingrad.ru/index.php?showtopic=58940&view=findpost&p=471466 http://forum.vingrad.ru/index.php?showtopic=80360&view=findpost&p=622353 |
| Автор: Janus 14.4.2006, 17:20 |
| А через system()? Команды разные, но кто запрещает поставить их 2 подряд или определить тип ОС в программе и вызвать нужную. |
| Автор: _hunter 14.4.2006, 17:27 |
| это: требование... проще, в таком случае, clrscr() использовать |