Как я могу поместить строку с атрибутами на экран с автоматическим переносом и перемещением курсора с помощью ncurses? - PullRequest
0 голосов
/ 22 декабря 2018

Как описано здесь , функции add_wchstr не продвигают текущую позицию курсора или не выполняют автоматическое перенос.

Но если я хочу выводить текст, например addwstr do, но с атрибутами формата, что я должен вызывать?

Если ncurses тупо пропускает такую ​​функцию, я думаю реализовать ее вручную (просто вызывая add_wch для каждого символа и улучшая положение курсора).Но основные проблемы заключаются в следующем:

Как указать, требуется ли автоматическое перенос?

Как указать, отображается ли символ над 2 ячейками (символами полной ширины), чтобыЯ должен правильно вызвать add_wch дважды (или любые другие альтернативные решения, которые правильно отображают символы полной длины)?

Как я могу указать, куда следует добавить текущее положение курсора?

1 Ответ

0 голосов
/ 22 декабря 2018

Вы можете установить

  • атрибуты окна с помощью wattrset / wattr_set ,

    Эти процедуры управляют текущими атрибутами именованного окна, которые затем применяются квсе символы, которые записаны в окне с помощью waddch, waddstr и wprintw.Атрибуты являются свойством персонажа и перемещаются вместе с ним через любые операции прокрутки и вставки / удаления строки / символа.По мере возможности они отображаются в виде соответствующих модификаций графического представления символов, нанесенных на экран.

или

  • фонового символас wkbgdset / wbkgdset .
      The bkgdset and wbkgdset routines  manipulate  the  background  of  the
    

    именованное окно.Фон окна - это chtype, состоящий из любой комбинации атрибутов (т. Е. Представления) и символа.Атрибутивная часть фона объединяется (ИЛИ) со всеми непустыми символами, которые записываются в окно с помощью waddch.И символьная, и атрибутная части фона объединяются с пустыми символами.Фон становится свойством персонажа и перемещается вместе с ним через любую прокрутку и операции вставки / удаления строки / символа.

...