Как я могу указать прозрачный фон, используя Perl и проклятия?
Вопрос
Я пытаюсь получить фон стандартный цвет терминала вместо черного, но я не могу понять это. Когда я использую use_default_colors()
Стандарты похожи на не использовать цвета, но я хотел бы изменить цвет переднего плана, а не цвет фона. я использую init_color_pair(1, COLOR_RED, COLOR_BLACK);
Но это дает мне черный фон, чего я не хочу.
Решение
Чтобы иметь прозрачный фон, пользователь вашего приложения должно было указать его в своих .xdefaults или что -то подобное. Если у пользователя уже есть прозрачный фон, все, что вам нужно сделать, это использовать фон по умолчанию, как так:
use Curses;
#...some init here...
# colors:
use_default_colors; # mandatory, we want to use the default background which is transparent
init_pair 1, COLOR_BLUE, -1; # -1 mandatory, again, we want *default* background
init_pair 2, -1, COLOR_WHITE; # you can use the default foreground color if you like
Не связан с StackOverflow