Как очистить конкретную строку с NCurses?

Как очистить конкретную строку с NCurses?

Мне нужно стереть линию на экране, не перерисовывая все это целиком. Как мне это сделать?


person Kristina Brooks    schedule 22.02.2011    source источник


Ответы (4)


Вы можете разместить в строке, которую хотите очистить, а затем вызвать функцию clrtoeol .

person Pablo Santa Cruz    schedule 22.02.2011

Так я и сделал это для своих целей.

int y, x;            // to store where you are
getyx(stdscr, y, x); // save current pos
move(y, 0);          // move to begining of line
clrtoeol();          // clear line
move(y, x);          // move back to where you were
person BReynolds    schedule 01.12.2013
comment
есть ли шанс, что вы знаете, как это сделать в вертикальном масштабе? означает очистить все строки до последней строки - person serup; 28.09.2016

возможно, crltoeol поможет

person Pierre Lacave    schedule 22.02.2011

Если вы хотите очистить все строки от курсора до последней строки, вы можете вызвать clrtobot()

person Scienziatogm    schedule 03.07.2019