2012-09-15 21 views
5

Tôi dường như không nhận được miếng đệm ncurses để làm việc trong python (2.6, 2.7 và 3.2). Sử dụng mã trực tiếp của http://docs.python.org/howto/curses.html Tôi thậm chí không thể làm cho nó hoạt động. Non-pad mã hoạt động hoàn hảo.(n) curses pad trong python không hoạt động

import curses 

def func(scr): 
    pad = curses.newpad(100, 100) 
    pad.addstr(0,0, "Testing") 

    # Displays a section of the pad in the middle of the screen 
    pad.refresh(0,0, 5,5, 10,10) 

    scr.refresh() 
    scr.getch() 

if __name__ == '__main__': 
    curses.wrapper(func) 

Sự cố có thể là gì? Loại bỏ các pad (và thay đổi pad để scr) hoạt động tốt

+0

Bạn đang sử dụng nền tảng nào? –

+0

Linux, Ubuntu 12.04 dành cho 2.7 và 3.2 và Debian 6.0 cho 2.6 – byteit101

Trả lời

4

Bạn đang ghi đè lên các pad. Thử gọi phương thức getch từ đối tượng pad thay vì đối tượng cửa sổ chính scr và xóa scr.refresh.

+0

Điều gì làm thay đổi getch? – byteit101

+0

Bạn muốn đọc trong ngữ cảnh của cửa sổ pad thay vì từ cửa sổ cơ sở. Một cửa sổ pad thường là một cửa sổ phụ tạm thời phủ lên một cửa sổ khác. –