簡體   English   中英

屬性BOLD似乎不適用於我的curses

[英]Attribute BOLD doesn't seem to work in my curses

我使用這樣的東西:screen.addstr(text,color_pair(1)| A_BOLD),但它似乎不起作用..但是,A_REVERSE和所有其他屬性確實有效!

事實上,我正在嘗試用白色打印一些東西,但是COLOR_WHITE將它打印成灰色..經過一段時間的搜索,似乎將它打印成灰色+ B​​OLD就可以了!

任何幫助將不勝感激。

這是一個示例代碼(Python 2.6,Linux):

#!/usr/bin/env python
from itertools import cycle
import curses, contextlib, time

@contextlib.contextmanager
def curses_screen():
    """Contextmanager's version of curses.wrapper()."""
    try:
        stdscr=curses.initscr()
        curses.noecho()
        curses.cbreak()
        stdscr.keypad(1)
        try: curses.start_color()
        except: pass

        yield stdscr
    finally:
        stdscr.keypad(0)
        curses.echo()
        curses.nocbreak()
        curses.endwin()

if __name__=="__main__":
    with curses_screen() as stdscr:
        c = curses.A_BOLD
        if curses.has_colors():
            curses.init_pair(1, curses.COLOR_GREEN, curses.COLOR_BLACK)
            c |= curses.color_pair(1)

        curses.curs_set(0) # make cursor invisible

        y, x = stdscr.getmaxyx()
        for col in cycle((c, curses.A_BOLD)):
            stdscr.erase()
            stdscr.addstr(y//2, x//2, 'abc', col)
            stdscr.refresh()
            time.sleep(1)

一切似乎都在起作用。

我試過這個: screen.addstr(text, curses.color_pair(1) | curses.A_BOLD)並且它有效!

所以只需添加curses. 它應該做的伎倆。 當然在開始時使用: import curses

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM