6.12.2 Window Objects
Window objects, as returned by initscr() and
newwin() above, have the
following methods:
- refresh ()
-
Update the display immediately (sync actual screen with previous
drawing/deleting methods).
- nooutrefresh ()
-
Mark for refresh but wait.
- mvwin (new_y, new_x)
-
Move the window so its upper-left corner is at
(new_y, new_x)
.
- move (new_y, new_x)
-
Move cursor to
(new_y, new_x)
.
- subwin ([nlines, ncols,] begin_y, begin_y)
-
Return a sub-window, whose upper-left corner is at
(begin_y, begin_x)
, and whose width/height is
ncols/nlines.
By default, the sub-window will extend from the
specified position to the lower right corner of the window.
- addch ([y, x,] ch[, attr])
-
Note: A character means a C character (i.e., an
ASCII code), rather then a Python character (a string of length 1).
(This note is true whenever the documentation mentions a character.)
Paint character ch at (y, x)
with attributes
attr, overwriting any character previously painter at that
location. By default, the character position and attributes are the
current settings for the window object.
- insch ([y, x,] ch[, attr])
-
Paint character ch at
(y, x)
with attributes
attr, moving the line from position x right by one
character.
- delch ([x, y])
-
Delete any character at
(y, x)
.
- echochar (ch[, attr])
-
Add character ch with attribute attr, and immediately
call refresh.
- addstr ([y, x,] str[, attr])
-
Paint string str at
(y, x)
with attributes
attr, overwriting anything previously on the display.
- attron (attr)
-
Turn on attribute attr.
- attroff (attr)
-
Turn off attribute attr.
- setattr (attr)
-
Set the current attributes to attr.
- standend ()
-
Turn off all attributes.
- standout ()
-
Turn on attribute A_STANDOUT.
- border ([ls[, rs[, ts[,
bs[, tl[, tr[,
bl[, br]]]]]]]])
-
Draw a border around the edges of the window. Each parameter specifies
the character to use for a specific part of the border; see the table
below for more details. The characters must be specified as integers;
using one-character strings will cause TypeError to be
raised.
Note: A 0
value for any parameter will cause the
default character to be used for that parameter. Keyword parameters
can not be used. The defaults are listed in this table:
Parameter |
Description |
Default value |
ls |
Left side |
ACS_VLINE |
rs |
Right side |
ACS_VLINE |
ts |
Top |
ACS_HLINE |
bs |
Bottom |
ACS_HLINE |
tl |
Upper-left corner |
ACS_ULCORNER |
tr |
Upper-right corner |
ACS_URCORNER |
bl |
Bottom-left corner |
ACS_BLCORNER |
br |
Bottom-right corner |
ACS_BRCORNER |
- box ([vertch, horch])
-
Similar to border(), but both ls and rs are
vertch and both ts and bs are horch. The default
corner characters are always used by this function.
- hline ([y, x,] ch, n)
-
Display a horizontal line starting at
(y, x)
with
length n consisting of the character ch.
- vline ([y, x,] ch, n)
-
Display a vertical line starting at
(y, x)
with
length n consisting of the character ch.
- erase ()
-
Clear the screen.
- deletln ()
-
Delete the line under the cursor. All following lines are moved up
by 1 line.
- insertln ()
-
Insert a blank line under the cursor. All following lines are moved
down by 1 line.
- getyx ()
-
Return a tuple
(y, x)
of current cursor position.
- getbegyx ()
-
Return a tuple
(y, x)
of co-ordinates of upper-left
corner.
- getmaxyx ()
-
Return a tuple
(y, x)
of the height and width of
the window.
- clear ()
-
Like erase(), but also causes the whole screen to be repainted
upon next call to refresh().
- clrtobot ()
-
Erase from cursor to the end of the screen: all lines below the cursor
are deleted, and then the equivalent of clrtoeol() is performed.
- clrtoeol ()
-
Erase from cursor to the end of the line.
- scroll ([lines
= 1
])
-
Scroll the screen upward by lines lines.
- touchwin ()
-
Pretend the whole window has been changed, for purposes of drawing
optimizations.
- touchline (start, count)
-
Pretend count lines have been changed, starting with line
start.
- getch ([x, y])
-
Get a character. Note that the integer returned does not have to
be in ASCII range: function keys, keypad keys and so on return numbers
higher then 256. In no-delay mode, an exception is raised if there is
no input.
- getstr ([x, y])
-
Read a string from the user, with primitive line editing capacity.
- inch ([x, y])
-
Return the character at the given position in the window. The bottom
8 bits are the character proper, and upper bits are the attributes.
- clearok (yes)
-
If yes is 1, the next call to refresh()
will clear the screen completely.
- idlok (yes)
-
If called with yes equal to 1, curses will try and use
hardware line editing facilities. Otherwise, line insertion/deletion
are disabled.
- leaveok (yes)
-
If yes is 1,
cursor is left where it is, instead of being at ``cursor position.''
This reduces cursor movement where possible. If possible it will be made
invisible.
If yes is 0, cursor will always be at
``cursor position'' after an update.
- setscrreg (top, bottom)
-
Set the scrolling region from line top to line bottom. All
scrolling actions will take place in this region.
- keypad (yes)
-
If yes is 1, escape sequences generated by some keys (keypad,
function keys) will be interpreted by curses.
If yes is 0, escape sequences will be left as is in the input
stream.
- nodelay (yes)
-
If yes is 1, getch() will be non-blocking.
- notimeout (yes)
-
If yes is 1, escape sequences will not be timed out.
If yes is 0, after a few milliseconds, an escape sequence will
not be interpreted, and will be left in the input stream as is.
Send comments on this document to python-docs@python.org.