亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? scounix下curses編程函數(shù)說明.htm

?? curses界面編程
?? HTM
?? 第 1 頁 / 共 5 頁
字號:
<HTML><HEAD><TITLE>Douzhe.com/SCO精華版文章/精華版:scounix下curses編程函數(shù)說明;兄弟拿出來共享的別客氣</TITLE><META http-equiv=Content-Type content="text/html; charset=gb2312"><style>BODY {	FONT-SIZE: 9pt; FONT-FAMILY: "MS Shell Dlg";}P {	FONT-SIZE: 9pt; FONT-FAMILY: "MS Shell Dlg"}SELECT {	FONT-SIZE: 9pt; FONT-FAMILY: "MS Shell Dlg"}TD {	FONT-SIZE: 12px; FONT-FAMILY: "MS Shell Dlg"}INPUT {	FONT-SIZE: 9pt; FONT-FAMILY: 宋體; verdana: }TEXTAREA {	FONT-SIZE: 9pt; FONT-FAMILY: 宋體; verdana: }TEXTAREA {	FONT-SIZE: 9pt; FONT-FAMILY: 宋體; verdana: }.input1 {	BORDER-RIGHT: #085d3f 1px solid; BORDER-TOP: #085d3f 1px solid; BORDER-LEFT: #085d3f 1px solid; BORDER-BOTTOM: #085d3f 1px solid; BACKGROUND-COLOR: white}A {	FONT-SIZE: 9pt; TEXT-TRANSFORM: none; COLOR: #000000; TEXT-DECORATION: none}A.lefta {	FONT-SIZE: 9pt; TEXT-TRANSFORM: none; COLOR: #ffffff; TEXT-DECORATION: none}A.flink {	FONT-SIZE: 9pt; TEXT-TRANSFORM: none; COLOR: #000000; TEXT-DECORATION: none}A.lefta:hover {	COLOR: #c0c0c0; TEXT-DECORATION: none}A:hover {	COLOR: red; TEXT-DECORATION: none}A:visited {	TEXT-DECORATION: none}.smallsize {	FONT-SIZE: 9px; COLOR: #d9d9d9; FONT-FAMILY: "verdana"}LI {	FONT-SIZE: 9pt; LINE-HEIGHT: 15pt}.tt2 {	FONT-SIZE: 9pt; LINE-HEIGHT: 16pt}.tt1 {	FONT-SIZE: 14px}.tt3 {	FONT-SIZE: 9pt; LINE-HEIGHT: 13pt}A.hb {	FONT-SIZE: 9pt; COLOR: #000000; LINE-HEIGHT: 10pt}A.tt1 {	COLOR: #000000; TEXT-DECORATION: none}</style><BODY ><center><table width=750 border="0" cellspacing="0" cellpadding="0" align="center">  <tr>     <td>      <div align="center"><img src="http://www.douzhe.com/images/biglogo.gif" border=0 alt="Douzhe.com"><br>在 學 習 UNIX 的 道 路 上 有 南 非 蜘 蛛 陪 伴 所 以 不 寂 寞</div><br>    </td>  </tr>  <tr>     <td>            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>              <TBODY>              <TR>                <TD width="100%" bgColor=#49ADE9 height=17>                <FONT color=#ffffff>&nbsp;&gt;&gt; <A href="http://www.douzhe.com"><FONT color=#ffffff>DouZhe.com</FONT></A> >                <A href="http://www.douzhe.com/bbs/forums.cgi?forum=4"><FONT color=#ffffff>SCO</FONT></A>                </TD>              </TR>              </TBODY>              </TABLE>      </td>  </tr></table><table width=750 border="0" cellspacing="0" cellpadding="0" align="center">  <tr>     <td><SPAN style="FONT-SIZE: 14px"><BR>            <CENTER><B>精華版:scounix下curses編程函數(shù)說明;兄弟拿出來共享的別客氣 </B></CENTER><BR></div>    </td>  </tr>  <tr>     <td>      <div align="center">作者:<a href=http://www.douzhe.com/bbs/profile.cgi?action=show&member=小肚子 target=_blank>小肚子</a>  &nbsp;&nbsp;&nbsp;&nbsp;發(fā)表時間:2002/09/02 09:37am</div><br>    </td>  </tr>    <tr>     <td align=center>            <TABLE cellSpacing=0 cellPadding=0 width="90%" border=0>              <TBODY>              <TR>		<td><SPAN style="FONT-SIZE: 14px">		INDDW*curscr:當前屏幕<br>WINDOW &nbsp;*stdscr:標準屏幕<br>int LINES:終端上的行數(shù)<br>int COLS:終端上的列數(shù)<br>bool &nbsp;TRUE:真標志,1<br>bool &nbsp;FALSE:假標志,0<br>int &nbsp;ERR:錯誤標志,-1<br>int &nbsp;OK:OK標志,0<br>---------------------------------------------<br>win:WINDOW &nbsp;*<br>bf:bool<br>ch:chty &nbsp;pe<br>str:char &nbsp;*<br>chstr:chty &nbsp;pe*<br>fmt:char &nbsp;*<br>否則:int &nbsp;<br>---------------------------------------------<br>初始化<p>WINDOW &nbsp;*initscr()<br>SCREEN*newterm(char &nbsp;*type, FILE &nbsp;*outfd, FILE &nbsp;*infd)<br>對用戶訪問的每個終端都應(yīng)該調(diào)用newterm<br>t y p e是終端的名稱,包括在$ T E R M中(如ansi, xterm, vt100等等)<br>SCREEN*set_term(SCREEN &nbsp;*new)<br>用戶可以切換當前終端。所有的函數(shù)都將在設(shè)置的當前終端上起作用。<br>int &nbsp; &nbsp;endwin()<br>退出程序之前,關(guān)閉所有打開的窗口。<br>之后還可以調(diào)用refresh(),<br>int &nbsp; &nbsp;isendwin()<br>ifendwin()-&amp;gt&#59;refresh(),TRUE,|FALSE。<br>-----------------------<br>WINDOW &nbsp;*newwin(nlines,ncols,begy,begx)<br>begy和begx是窗口左上角的坐標。nlines是一個整數(shù),<br>存放著行的數(shù)目,而ncols,存放著列的數(shù)目。<br>所有的參數(shù)設(shè)置為零,則打開的窗口的大小將與屏幕的大小相同。<br>int &nbsp; &nbsp;delwin(win)<br>它刪除窗口win。如果存在子窗口,以前先要刪除這些子窗口。這個函數(shù)將<br>釋放win所占據(jù)的所有資源。在調(diào)用endwin()之前用戶應(yīng)該刪除所有的窗口<br>int &nbsp; &nbsp;mvwin(win,by,bx)<br>它將把窗口移到坐標(by,bx)處。如果把窗口移出屏幕邊界的范圍,則ERR<br>WINDOW &nbsp;*subwin(origwin,nlines,ncols,begy,begx)<br>它返回一個位于origwin窗口中間的子窗口。如果用戶改變這兩個窗口<br>(origwin或者那個新窗口)中的一個,則這種改變將會同時反映到這兩<br>個窗口上。在下一次調(diào)用refresh()之前,先要調(diào)用touchwin(origwin)<br>begx和begy是相對于屏幕的,而不是相對于origwin的。<br>WINDOW &nbsp;*derwin(origwin,nlines,ncols,begy,begx)<br>此函數(shù)與subwin(.)相同,只不過這里的begx和begy是相對于origwin的,而不是相對于屏幕的。<br>mvderwin(win,y,x)<br>此函數(shù)將把win移到父窗口內(nèi)。(注意:此函數(shù)尚未實現(xiàn))。<br>WINDOW &nbsp;*dupwin(win)<br>此函數(shù)復(fù)制窗口win。<br>int &nbsp; &nbsp;overlay(win1,win2)<br>將把win1中的所有文本拷貝到win2中,但是不拷貝空格。<br>int &nbsp; &nbsp;overwrite(win1,win2)<br>也是做文本拷貝工作的函數(shù),但它拷貝空格。<br>int &nbsp; &nbsp;copywin(win1,win2,sminrow,smincol,dminrow,<br>dmincol,dmaxrow,dmaxcol,overlay)<br>它所做的工作與overlay(.)和overwrite(.)相似,但是該函數(shù)還可以讓程序員選擇拷貝窗口的哪個區(qū)域。<br>int &nbsp;addch(ch)<br>int &nbsp;waddch(win,ch)<br>int &nbsp;mvaddch(y,x,ch)<br>int &nbsp;mvwaddch(win,y,x,ch)<br>----------------<br>int &nbsp;addstr(str)<br>int &nbsp;addnstr(str,n)<br>int &nbsp;waddstr(win,str)<br>int &nbsp;waddnstr(win,str,n)<br>int &nbsp;mvaddstr(y,x,str)<br>int &nbsp;mvaddnstr(y,x,str,n)<br>int &nbsp;mvwaddstr(win,y,x,str)<br>int &nbsp;mvwaddnstr(win,y,x,str,n)<br>-----------------------------<br>int &nbsp;addchstr(chstr)<br>int &nbsp;addchnsrtr(chstr,n)<br>int &nbsp;waddchstr(win,chstr)<br>int &nbsp;waddchnstr(win,chstr,n)<br>int &nbsp;mvaddchstr(y,x,chstr)<br>int &nbsp;mvaddchnstr(y,x,chstr,n)<br>int &nbsp;mvwaddchstr(win,y,x,chstr)<br>int &nbsp;mvwaddchnstr(win,y,x,chstr,n)<br>*****chstr是指向ch type數(shù)組的一個指針。*****<br>---------------------------<br>int &nbsp;echochar &nbsp;(ch)<br>int &nbsp;wechochar &nbsp;(win,ch)<br>---------------------------<br>int &nbsp;printw(fmt,..)<br>int &nbsp;wprintw(win.fmt,....)<br>int &nbsp;mvprintw(y,x,fmt,...)<br>int &nbsp;mvwprntw(win,y,x,fmt,..)<br>---------------------------<br>int &nbsp;insch(c)<br>int &nbsp;winsch(win,c)<br>int &nbsp;mvinsch(y,x,c)<br>int &nbsp;mvwinsch9win,y,x,c)<br>這些函數(shù)把字符ch插入到光標的左邊,<br>光標后面的所有字符則向右移動一個位置。<br>在這一行最右端的字符可能會丟失。<br>---------------------------<br>int &nbsp;insert()<br>int &nbsp;winsert(win)<br>在當前行的上方插入一個空行(最底下的一行將被丟失)。<br>---------------------------<br>int &nbsp;insdelin(n)<br>int &nbsp;winsdelln(win,n)<br>如果n為正數(shù),則這些函數(shù)將在適當?shù)拇翱诘漠斍肮鈽松戏讲迦雗行<br>(這樣一來最底下的n行將丟失);如果n為負數(shù),則光標下面的n行將被刪除,<br>余下的行將上升,頂替它們的位置。這些函數(shù)將在當前光標的左邊插入str<br>(字符的個數(shù)不能超過一行的限度)。在光標右邊的字符將右移,如果到達行<br>尾,則字符將丟失,光標位置不變。y和x是指在插入str以前先要把光標移動<br>到的坐標,n是要插入的字符的數(shù)目(如果n為0則插入整個字符串)。<br>---------------------------<br>int &nbsp;insstr(str)<br>int &nbsp;insnstr(str,n)<br>int &nbsp;winsstr(win,str)<br>int &nbsp;winsnstr(win,str,n)<br>int &nbsp;mvinsstr9y,x,str)<br>int &nbsp;mvinsnstr(y,x,str,n)<br>int &nbsp;mvwinsstr(win,y,x,str)<br>int &nbsp;mvwinsnstr(win,y,x,str,n)<br>這些函數(shù)將在當前光標的左邊插入str(字符的個數(shù)不能超過一行的限度)。<br>在光標右邊的字符將右移,如果到達行尾,則字符將丟失,光標位置不變。<br>y和x是指在插入str以前先要把光標移動到的坐標,n是要插入的字符的數(shù)目<br>(如果n為0則插入整個字符串)。<br>---------------------------<br>int &nbsp;delch()<br>int &nbsp;wdelch(win)<br>int &nbsp;mvdelch(y,x)<br>int &nbsp;mvwdelch(win,y,x)<br>刪除光標左邊的字符,并把光標右邊余下的字符向左移動一個位置。<br>y和x是在進行刪除操作以前要把光標移動到的坐標。<br>int &nbsp;deleteln()<br>int &nbsp;wdeleteln(win)<br>刪除光標下面的一行,并把下面所有的其他行都向上移動一個位置。<br>此外,屏幕最底下的一行將被清除。<br>-----------------------------<br>方框和直線<p>int &nbsp;border(ls,rs,ts,bs,tl,tr,bl,br)<br>int &nbsp;wborder(win,ls,rs,ts,bs,tl,tr,bl,br)<br>int &nbsp;box(win,vert,hor)<br>這些函數(shù)在窗口的邊界(或者win的邊界)畫上方框。在下面的表格中,<br>讀者將可以看到字符,以及它們的默認值。當用零去調(diào)用box(.)時將<br>會用到這些默認值。在下面的圖中讀者可以看到方框中字符的位置<br>-------------<br>int &nbsp;vline9ch,n)<br>int &nbsp;wvline(win,ch,n)<br>int &nbsp;hline(ch,n)<br>int &nbsp;whline(win,ch,n)<br>這些函數(shù)將從當前光標位置開始畫一條水平線或者垂直線。<br>ch是畫線所使用的字符,n是要畫的字符的個數(shù),光標位置并不移動。<br>--------------------------<br>void &nbsp;bkgdset(ch)<br>void &nbsp;wbkgdset(win,ch)<br>這兩個函數(shù)設(shè)置窗口或者屏幕的背景字符和屬性。ch的屬性將和窗口中<br>所有非空格的字符的屬性進行OR操作。背景是窗口的一部分,<br>將不會隨著滾動、輸入或輸出而改變<br>int &nbsp;bkgd(ch)<br>int &nbsp;wbkgd(win,ch)<br>---------------------------------<br>int &nbsp;getch()<br>int &nbsp;wgetch()<br>int &nbsp;mvgetch(y,x)<br>int &nbsp;mvwgetch(win,y,x)<br>getch()將從終端讀取輸入,讀取的方式取決于是否設(shè)置了延遲模式。<br>如果設(shè)置了延遲模式,則getch()將一直等待,直到用戶按下一個鍵為止;<br>如果沒有設(shè)置延遲模式,則它將返回輸入緩沖區(qū)中的數(shù)據(jù),如果輸入緩沖區(qū)<br>為空,則它將返回ERR。mvgetch(.)和mvwgetch(.)首先把光標移動到位置<br>(y,x)上。名稱中有w字母的函數(shù)將從與窗口win相關(guān)的終端讀取輸入,<br>getch()和mvgetch(.)則從屏幕相關(guān)的終端讀取。如果使能了keypad(.)<br>在用戶按下某個功能鍵時,getch()將返回一個代碼,該代碼在.h頭文件中被<br>定義為KEY_*宏。如果用戶按下Esc鍵(它可能會是某個組合功能鍵的第<br>一個鍵),則ncurses將啟動一個否則就返回功能鍵的值。(如果需要的話,<br>可以使用notimeout()來關(guān)閉第二個定時器<br>int &nbsp;ungetch()<br>這個函數(shù)將把字符ch送回輸入緩沖區(qū)。<br>---------------------<br>int &nbsp;getstr(str)<br>int &nbsp;wgetstr(win,str)<br>int &nbsp;mvgetstr(y,x,str)<br>int &nbsp;mvwgetstr(win,y,x,str)<br>int &nbsp;wgetnstr(win,str,n)<br>這些函數(shù)的作用相當于對getch()進行一系列的調(diào)用,直到接收到一個新行。<br>行中的字符存放在str中(所以,在調(diào)用getstr(.)之前,不要忘記給字符指針<br>分配內(nèi)存)。如果打開了回送,則字符串將被顯示出來(使用noecho()可以關(guān)<br>閉回送)而用戶的刪除字符以及其他特殊字符也會被解釋出來<br>-----------------<br>chty &nbsp;peinch(0<br>chty &nbsp;pewinch(win)<br>chty &nbsp;pemvinch(y,x)<br>chty &nbsp;pemvwinch(win,y,x)<br>這些函數(shù)從屏幕或窗口返回一個字符,因為返回值的類型是chty &nbsp;pe,<br>所以還包括了屬性信息。這一信息可以使用常量A_*從字符中擴展得到。<br>-------------------<br>int &nbsp;scanw(fmt,...)<br>int &nbsp;wscanw(win,fmt,...)<br>int &nbsp;mvscanw(y,x,fmt,...)<br>int &nbsp;mvwscanw(win,y,x,fmt,...)<br>int &nbsp;vwscanw(win,fmt,va_list.)<br>----------------------------<br>輸出選項<br>int &nbsp;idlok9win,bf)<br>void &nbsp;fdcok(win.bf)<br>這兩個函數(shù)為窗口使能或者關(guān)閉終端的insert/delete特征(idlok(.)針對一<br>行,而idcok(.)則針對字符)。(注:idcok(.)尚未實現(xiàn))<br>void &nbsp;immedok(win,bf)<br>bf設(shè)置為TRUE,則對窗口win的每一次改變都將導(dǎo)致物理屏幕的一次刷新。<br>這將使程序的性能降低,所以默認的值是FALSE。(注:此函數(shù)尚未實現(xiàn))<br>int &nbsp;clearok(win,bf)<br>如果bf值為TRUE,則下一次調(diào)用wrefresh(win)時將會清除屏幕,<br>并完全地把它重新畫一遍(就像用戶在編輯器vi中按下Ctrl+L一樣)。<br>int &nbsp;leaveok(win,bf)<br>默認的行為是,ncurses讓物理光標停留在上次刷新窗口時的同一個位置上。<br>不使用光標的程序可以把leaveok(.)設(shè)置為TRUE,這樣一般可以節(jié)省光標<br>移動所需要的時間。此外,ncurses將試圖使終端光標不可見。<br>int &nbsp;nl()<br>int &nbsp;nonl()<br>這兩個函數(shù)控制新行的平移。使用nl()可以打開平移,這樣在回車時就會<br>平移到新的一行,在輸出時就會走行。而nonl()可以把平移關(guān)上。<br>關(guān)上平移之后,ncurses做光標移動操作時速度就會快一些。<br>------------------------------<br>輸入選項<p>int &nbsp;keypad(win,bf)<br>bf為TRUE,函數(shù)在等待輸入時會使能用戶終端的鍵盤上的小鍵盤。<br>ncurses將返回一個鍵代碼,該代碼在.h頭文件中被定義為KEY_*宏,<br>它是針對小鍵盤上的功能鍵和方向鍵的。對于PC鍵盤來說,<br>這一點是非常有幫助的,因為這樣用戶就可以使能數(shù)字鍵和光標鍵。<br>int &nbsp;meta(win.bf)<br>bf為TRUE,從getch()返回的鍵代碼將是完整的8位(最高位將不會被去掉)<br>int &nbsp;cbreak()<br>int &nbsp;nocbreak()<br>int &nbsp;crmode()<br>int &nbsp;nocrmode()<br>cbreak()和nocbreak()將把終端的CBREAK模式打開或關(guān)閉。如果CBREAK打開則程序就可以立刻使用讀取的輸入信息。如果CBREAK關(guān)閉,則輸入將被緩存<br>起來,直到產(chǎn)生新的一行(注意:crmode()和nocrmode()只是為了提供向上兼容性,不要使用它們)<br>int &nbsp;raw()<br>int &nbsp;noraw()<br>這兩個函數(shù)將把RAW模式打開或關(guān)閉。RAW與CBREAK相同,<br>它們的區(qū)別在于RAW模式不處理特殊字符。<br>int &nbsp;echo()<br>int &nbsp;noecho()<br>如果把echo()設(shè)置為TRUE,則用戶所敲的輸入將會回送并顯示出來,<br>而noecho()則對此保持沉默。<br>int &nbsp;halfdelay(t)<br>此函數(shù)與cbreak()相似,但它要延遲t秒鐘。<br>int &nbsp;nodelay(win,bf)<br>終端將被設(shè)置為非阻塞模式。如果沒有任何輸入則getch()將返回ERR,<br>否則如果設(shè)置為FALSE,則getch()將等待,直到用戶按下某個鍵為止。<br>int &nbsp;timeout(t)<br>int &nbsp;wtimeout(win,t)<br>筆者提倡大家使用這兩個函數(shù),而不要使用halfdelay(t)和nodelay(win,bf)getch()的結(jié)果取決于t的值。如果t是正數(shù),則讀操作將被阻塞t毫秒;<br>如果t為零,則不發(fā)生任何阻塞&#59;如果t是負數(shù),則程序?qū)⒆枞?,直到有輸入為?lt;br>int &nbsp;notimeout(win,bf)<br>如果bf為TRUE,則getch()將使用一個特殊的定時器(一秒鐘長)。到時間以后<br>再對以Esc等鍵打頭的輸入序列進行解釋。<br>int &nbsp;typeahead(fd)<br>如果fd是-1,則不檢查超前鍵擊,否則ncurses將使用文件描述符fd來進行這些檢查<br>int &nbsp;int &nbsp;rflush(win,bf)<br>當bf為TRUE時使能該函數(shù)。在終端上按下任意中斷鍵(quit、break.)時,<br>所有的輸出將會刷新到tty驅(qū)動程序隊列中。<br>&lt;/Content&gt;<br>&lt;/Issue&gt;<br>&lt;Replys&gt;<br>&lt;Reply&gt;<br>&lt;PostUserNickName&gt;&lt;/PostUserNickName&gt;<br>&lt;rank&gt;四級(中級)&lt;/rank&gt;<br>&lt;ranknum&gt;user4&lt;/ranknum&gt;<br>&lt;credit&gt;97&lt;/credit&gt;<br>&lt;ReplyID&gt;6339214&lt;/ReplyID&gt;<br>&lt;TopicID&gt;984818&lt;/TopicID&gt;<br>&lt;PostUserId&gt;202193&lt;/PostUserId&gt;<br>&lt;PostUserName&gt;qisiwole&lt;/PostUserName&gt;<br>&lt;Point&gt;0&lt;/Point&gt;<br>&lt;Content&gt;------------------------------<br>終端屬性<br>int &nbsp;baudrate()此函數(shù)返回終端的速度,以bps為單位。<br>char &nbsp;erasechar()此函數(shù)返回當前刪除的字符。<br>char &nbsp;killchar()此函數(shù)返回當前殺死的字符。<br>int &nbsp;has_ic()<br>int &nbsp;has_il()如果終端具有插入/刪除字符的能力,則has_rc()將返回TRUE如果終端具有插入/刪除行的能力,則has_il()將返回TRUE,<br>否則這兩個函數(shù)將返回ERR。(注:尚未實現(xiàn))<br>char &nbsp;*longname()此函數(shù)所返回的指針允許用戶訪問當前終端的描述符。<br>chty &nbsp;petermattrs()(注:此函數(shù)尚未實現(xiàn))<br>char &nbsp;*termname()這個函數(shù)從用戶環(huán)境中返回TERM的內(nèi)容。(尚未實現(xiàn))<br>--------------------------------<br>更新終端<br>int &nbsp;refresh()<br>int &nbsp;wrefresh(win)<br>refersh()將把窗口映像拷貝到終端,而wrefresh(win)將把窗口映像<br>拷貝到win,并使它看起來象原來的樣子。<br>int &nbsp;wnoutrefresh(win)<br>int &nbsp;doupdate()<br>wnoutrefresh(win)將會只拷貝到窗口win,這意味著在終端上將不進行任何輸出,但是虛擬屏幕實際上看起來象程序員所希望的那樣。doupdate()將輸<br>出到終端上。程序可以改變許多窗口,對每個窗口都調(diào)用一次<br>wnoutrefresh(win),然后再調(diào)用一次doupdate()來更新物理屏幕。<br>int &nbsp;redrawln(win)<br>int &nbsp;wredrawln(win,bline,blines)<br>如果在往屏幕上輸出新內(nèi)容時需要清除一些行或者整個屏幕,可以使用這兩<br>個函數(shù)。(可能這些行已經(jīng)被破壞了或者由于其他的原因。)<br>int &nbsp;touchwin(win)<br>int &nbsp;touchline(win,start,count)<br>int &nbsp;wtouchln(win,y,n,changed)<br>int &nbsp;untouchwln(win)<br>這些函數(shù)通知ncurses整個win窗口已經(jīng)被改動過了,或者從start直到<br>start+count的這些行已經(jīng)被改動過了。例如,如果用戶有一些重疊的窗口<br>(正如在example.c中一樣),對某個窗口的改動不會影響其他窗口的映像。<br>wtouchln(.)<br>將按掀從y開始的n行。如果change的值是TRUE,則這些行被按掀過了,<br>否則就還未被按掀過(改變或未改變)。<br>untouchwin(win)將把窗口win標記為自上次調(diào)用refresh()以來還未被按掀。<br>int &nbsp;ls_linetouched(win,line)<br>int &nbsp;ls_wint &nbsp;ouched(win)<br>通過使用這兩個函數(shù),用戶可以檢查自從上次調(diào)用refresh()以來,<br>第line行或者窗口win是否已被按掀過。<br>-------------------------------<br>視頻屬性與顏色<br>ncurses定義了八種顏色,在帶有彩色支持的終端上用戶可以使用這些顏色。<br>首先,調(diào)用start_color()初始化顏色數(shù)據(jù)結(jié)構(gòu),<br>然后使用has_colors()檢查終端權(quán)能。<br>start_color()將初始化COLORS和COLOR_PAIR。<br>前者是終端所支持的最多的顏色數(shù)目,而后者是用戶可以定義的色彩對的最大數(shù)目。<br>兩個屬性可以使用OR操作組合起來?!癈OLORPAIRS_1COLORS_1”<p>int &nbsp;color_content(color,t,g,b)<p>此函數(shù)獲取color的顏色成份r,g和b。<br>首先,函數(shù)CheckColor調(diào)用start_color()初始化顏色,如果當前終端有彩色的話,<br>則函數(shù)has_colors()將返回TRUE。我們檢查了這一點以后,調(diào)用init_pair(.)<br>把前景色和背景色組合起來,再調(diào)用wattrset(.)為特定的窗口設(shè)置這些顏色對。<br>此外,如果我們使用的是黑白終端,還可以單獨使用wattrset(.)來設(shè)置屬性。<br>如果要在xterm中獲取顏色,我認為最佳方法是使用ansi_xterm,<br>以及來自MidnightCommander的terminfo項目。用戶可以獲取ansi_xterm<br>和MidnightCommander的源代碼(mc_x.x.tar.gz),然后編譯ansi_xterm,<br>并對mc_x.x.tar.gz文檔中的xterm.ti和vt100.ti使用tic命令。<br>執(zhí)行ansi_xterm,把它試驗出來<p>---------------------------------<br>光標和屏幕坐標<p>int &nbsp;move(y,x)<br>int &nbsp;wmove(win,y,x)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; move()將移動光標,而wmove(win)則從窗口win中移動光標。對<br>輸入/輸出函數(shù)來說,還定義了其他的一些宏,在調(diào)用特定函數(shù)之前,<br>這些宏可以移動光標。<p>int &nbsp;curs_set(bf) &nbsp; &nbsp;這個函數(shù)將把光標置為可見或者不可見,如果終端有這個功能<br>void &nbsp;getyx(win,y,x) &nbsp; &nbsp; getyx(.)將返回當前光標位置。(注意:這是一個宏)<br>void &nbsp;getparyx(win,y,x)<br>如果win是個子窗口,getparyx(.)將把該窗口對應(yīng)父窗口的坐標存儲在y和x則y和x都將為-1。(注:此函數(shù)尚未實現(xiàn))<p>void &nbsp;getbegyx(win,y,x)<br>void &nbsp;getmaxyx(win,y,x)<br>int &nbsp;getmaxx(win)<br>int &nbsp;getmaxy(win)<br>這些函數(shù)把窗口win的開始坐標和大小坐標存放在y和x中。<br>int &nbsp;getsyx(int &nbsp;y,int &nbsp;x)<br>int &nbsp;setsyx(int &nbsp;y,int &nbsp;x)<br>getsyx(.)把虛擬屏幕光標存放在y和x中,而setsyx(.)則設(shè)置這個坐標。<br>如果y和x是-1, 用戶調(diào)用getsyx(.)將會設(shè)置leaveok。<p>------------------------------<br>滾動<p>int &nbsp;tscrollok(win,bf)<br>當光標在屏幕的右下角并且輸入了一個字符(或者新的一行)時,如bf為TRUE則窗口win中的文本將上滾一行。如果bf為FALSE,則鼠標留在原來的位置上<br>當滾動特征打開時,使用下面的函數(shù)可以滾動窗口中的內(nèi)容。<br>(注意:當用戶在窗口的最<br>后一行輸入一個新行時,也應(yīng)該發(fā)生相應(yīng)的滾動操作,<br>所以在使用scrollok(.)時要十分小心,<br>否則可能會得到出乎意料的結(jié)果。)<br>int &nbsp;scrol(win)<br>此函數(shù)將使窗口向上滾動一行(數(shù)據(jù)結(jié)構(gòu)中的行也向上滾動)。<br>int &nbsp;acrl(n)<br>int &nbsp;wscrl(win,n)<br>這兩個函數(shù)將使屏幕或者窗口win向上向下滾動,滾動方向取決于整數(shù)n的值<br>如果n是正數(shù),則窗口向上滾動n行,否則如果n是負數(shù),則窗口向下滾動n行<br>int &nbsp;setscrreg(t,b)<br>int &nbsp;wsetscrreg(win,t,b)<br>這兩個函數(shù)設(shè)置一個軟滾動區(qū)。<br>-------------------------------------<br>小鍵盤<p>WINDOW &nbsp;*newpad(nlines,ncols)<br>WINDOW &nbsp;*subpad(orlg,nlines,ncols,begy,begx)<br>int &nbsp;prefresh(pad,pminrow,pmincol,sminrow,smincol,smaxrow,smaxcol)<br>int &nbsp;pnoutrefresh(pad,pminrow,pmincol,sminrow,smincol,smaxrow,smaxcol)<br>int &nbsp;pechochar &nbsp;(pad,ch)<br>----------------------------<br>軟標簽<p>int &nbsp;slk_init(int &nbsp;fmt)<br>int &nbsp;slk_set(int &nbsp;labnum,char &nbsp;*label,int &nbsp;fmt)<br>int &nbsp;slk_refresh()<br>int &nbsp;slk_noutrefresh()<br>char &nbsp;*slk_label(int &nbsp;labnum)<br>int &nbsp;slk_clear()<br>int &nbsp;slk_restore()<br>int &nbsp;slk_touch()<br>int &nbsp;slk_attron(chty &nbsp;peattr)<br>int &nbsp;slk_attrset(chty &nbsp;peattr)<br>int &nbsp;slk_attroff(chty &nbsp;peattr)<br>這些函數(shù)是與attron(attr)、attrset(attr)和attroft(attr)相對應(yīng)的,<br>但它們尚未實現(xiàn)。<br>------------------------------<br>int &nbsp;beep()<br>int &nbsp;flash()<br>char &nbsp;*unctrl(chty &nbsp;pec)<br>char &nbsp;*keyname(int &nbsp;c)<br>int &nbsp;filter()<br>(注:以上函數(shù)尚未實現(xiàn)。)<br>void &nbsp;use_env(bf)<br>int &nbsp;putwin(WINDOW &nbsp;*win,FILE*filep)<br>(注:以上函數(shù)尚未實現(xiàn)。)<br>WINDOW &nbsp;*getwin(FILE*filep)<br>(注:以上函數(shù)尚未實現(xiàn)。)<br>int &nbsp;delay_output(int &nbsp;ms)<br>int &nbsp;flushinp()<br>--------------------------------------<br>低級訪問<p>int &nbsp;def_prog_mode()<br>int &nbsp;def_shell)_mode()<br>int &nbsp;reset_prog_mode()<br>int &nbsp;reset_shell_mode()<br>int &nbsp;resetty()<br>int &nbsp;savetty()<br>int &nbsp;ripoffline(int &nbsp;line,int &nbsp;(*init)(WINDOW &nbsp;*,int &nbsp;))<br>int &nbsp;napms(int &nbsp;ms)<br>---------------------------------<br>屏幕轉(zhuǎn)儲<p>int &nbsp;scr_dump(char &nbsp;*filename)<br>(注:此函數(shù)尚未實現(xiàn)。)<br>int &nbsp;scr_restore(char &nbsp;*filename)<br>(注:此函數(shù)尚未實現(xiàn)。)<br>int &nbsp;scr_init(char &nbsp;*filename)<br>(注:此函數(shù)尚未實現(xiàn)。)<br>int &nbsp;scr_set(char &nbsp;*filename)<br>(注:此函數(shù)尚未實現(xiàn)。)<br>-----------------------------------<br>Termcap模擬<p>int &nbsp;tgetent(char &nbsp;*bp,char &nbsp;*name)<br>int &nbsp;tgetflag(char &nbsp;fd[2])<br>int &nbsp;tgetnum(char &nbsp;fd[2])<br>char &nbsp;*tgetstr(char &nbsp;fd[2],char &nbsp;**area)<br>char &nbsp;tgoto(char &nbsp;*cap,int &nbsp;col,int &nbsp;row)<br>int &nbsp;tputs(char &nbsp;*str,int &nbsp;offset,int &nbsp;(*putc)())<br>-------------------------------------------<br>調(diào)試函數(shù)<p>void &nbsp;_init(trace()<br>void &nbsp;_trace(char &nbsp;*,...)<br>char &nbsp;*_traceattr(mode)<br>void &nbsp;traceon()<br>void &nbsp;traceoff()<br>&lt;/Content&gt;<br>&lt;PostDateTime&gt;2002-08-31 09:29:00&lt;/PostDateTime&gt;<br>&lt;/Reply&gt;&lt;Reply&gt;<br>&lt;PostUserNickName&gt;&lt;/PostUserNickName&gt;<br>&lt;rank&gt;四級(中級)&lt;/rank&gt;<br>&lt;ranknum&gt;user4&lt;/ranknum&gt;<br>&lt;credit&gt;97&lt;/credit&gt;<br>&lt;ReplyID&gt;6339224&lt;/ReplyID&gt;<br>&lt;TopicID&gt;984818&lt;/TopicID&gt;<br>&lt;PostUserId&gt;202193&lt;/PostUserId&gt;<br>&lt;PostUserName&gt;qisiwole&lt;/PostUserName&gt;<br>&lt;Point&gt;0&lt;/Point&gt;<br>&lt;Content&gt;-------------------------------------------<p>8.21.1布爾型權(quán)能<br>變量權(quán)能名稱初始化描述<br>auto_left_marginbwbwcub1從最后一列換行到第0列<br>auto_right_marginamam終端的邊界自動對齊<br>back_color_erasebceut屏幕以背景色清除<br>can_changeccccc終端可以重新定義現(xiàn)有的顏色<br>ceol_standout_glitch &nbsp; &nbsp;xhpxs標準輸出不會被覆蓋所清除(hp)<br>col_addr_glitchxhpaYA對hpa/mhpa大寫字符而言只作正向移動<br>cpi_changes_rescpixYF改變字符間距將會影響解析度<br>cr_cancels_micro_mode &nbsp; &nbsp;crxm &nbsp; &nbsp;YB使用cr關(guān)閉宏模式<br>eat_newline_glitchxenlxn在80列之后將忽略新行(Concept)<br>erase_overtrikeeoeo可以用空格來刪除疊印<br>generic_typegngn通用行類型(如dialup,switch)<br>hard_copyhchc硬拷貝終端<br>hard_cursorchtsHC光標很難看到<br>has_meta_keykmkm有一個元鍵(shift,設(shè)置奇偶校驗位)<br>has_print &nbsp;_wheeldaisyYC打印機需要操作員來改變字符集<br>has_status_linehshs有一個額外的“狀態(tài)行”<br>hue_lightness_saturation &nbsp;hlshl終端只使用HLS顏色表示法(Tektronix)<br>insert_null_glitchinin插入模式,能識別空行<br>lpi_changes_reslpixYG改變行距將影響解析度<br>memory_abovedada顯示可以保留在屏幕上方<br>memory_belowdbdb顯示可以保留在屏幕下方<br>move_insert_modemirmi在插入模式下可以安全地移動<br>move_standout_mode &nbsp; msgrms在標準輸出模式下可以安全地移動<br>needs_xon_xoffnxonnx不能填充,需要nxon/xoff<br>no_esc_ctl_cxsbxbBeehive信號(F1=Escape,F2=CtrlC)<br>non_rev_rmcupnrrmcNRsmcup不能反轉(zhuǎn)rmcup<br>no_pad_char &nbsp;npcNP填充字符不存在<br>non_dest_scroll_region &nbsp; ndscr &nbsp; &nbsp;ND滾動區(qū)不可摧毀<br>over_strikeosos終端可以疊印<br>prtr_silentmc5i5i打印機不向屏幕回送<br>row_addr_glitchxvpaYDvhp/mvpa大寫字母只能作正向移動<br>semi_auto_right_margin &nbsp;samYE打印在最后一列將導(dǎo)致cr<br>status_line_esc_okeslokes在狀態(tài)行上可以使用Esc鍵<br>dest_tabs_magic_smso &nbsp; &nbsp;xtxt制表符不可用(Teleray1061)<br>tilde_glitchhzhzHazel_tine;不能打印’s<br>transparent_underline &nbsp; &nbsp;ulul下劃線字符疊印<br>xon_coffxonxo終端使用xon/xoff握手機制<br>8.21.2數(shù)值型權(quán)能<br>變量權(quán)能名稱初始值描述<br>bit_image_entwining &nbsp; &nbsp; bitwinYo在SYSV中未作描寫<br>buffer_capacitybufszYa在打印前緩存的字節(jié)的數(shù)目<br>columnscolsco在一行中列的數(shù)目<br>dot_vert_spacingspinvYb在水平方向上點與點的距離,以每英寸多少點為單位<br>dot_horz_spacingspinhYc在垂直方向上針之間的距離,以每英寸多少針為單位<br>init_tabsitit每#個空格算一個制表符的位置<br>label_heightlhlh每個標簽多少行<br>label_widthlwlw每個標簽多少列<br>lineslinesli屏幕或頁面上行的數(shù)目<br>lines_of_memorylmlm如果&amp;gt&#59;lines則表示內(nèi)存中的行數(shù),0意味著可變<br>magic_cookie_glitch &nbsp; &nbsp;xmcsgsmso或rmso所剩下的空白字符的數(shù)目<br>max_colorscolorsCo在屏幕上顏色的最大數(shù)目<br>max_micro_address &nbsp; maddrYd在micro_._address中的最大值<br>max_micro_jumpmjumpYe在parm_._micro中的最大值<br>max_pairspairspa在屏幕上顏色對的最大數(shù)目<br>micro_col_sizemcsYf在宏模式中字符間距的大小<br>micro_line_sizemlsYg在宏模式中行距的大小<br>no_color_videoncvNC不能使用彩色的視頻屬性<br>number_of_pinsnpinsYh在打印頭中針的數(shù)目<br>num_labelsnlabNl屏幕上標簽的數(shù)量<br>output_res_char &nbsp;orcYi水平解析度,以每行單元數(shù)為單位<br>output_res_lineorlYj垂直解析度,以每行單元數(shù)為單位<br>output_res_horz_inch &nbsp; orhiYk水平解度,以每英寸單元數(shù)為單位<br>output_res_vert_inch &nbsp; &nbsp;orviYl垂直解析度,以每英寸單元數(shù)為單位<br>padding_baud_rate &nbsp; &nbsp; pbpb在需要cr/nl填充時最低的波特率<br>virtual_terminalvtvt虛擬終端號(Unix系統(tǒng))<br>width_status_linewslws狀態(tài)行的第n列<p>(下面的數(shù)值型權(quán)能是在SYSVterm結(jié)構(gòu)中定義的,但在man幫助中還沒有提供對它們的<br>描述。我們的解釋來自term結(jié)構(gòu)的頭文件。)<br>變量權(quán)能名稱初始值描述<p>bit_image_typebitypeYp位映像設(shè)備的類型<br>buttonsbtnsBT鼠標按鍵的數(shù)目<br>max_attributesmama終端能夠處理的最多的組合屬性<br>maximum_windows &nbsp; &nbsp;wnumMW可定義窗口的最大數(shù)目<br>print &nbsp;_ratecpsYm打印速率,以每秒字符數(shù)為單位<br>wide_char &nbsp;_sizewidcsYn在雙寬度模式中字符間距的大小<p>8.21.3字符串型權(quán)能<br>變量權(quán)能名稱初始值描述<p>acs_char &nbsp;sacscac圖形字符集對一def=vt100<br>alt_scancode_escscesaS8掃描碼模擬的另一種換碼(默認值是VT100)<br>back_tab &nbsp;cbtbt向后tab(p)<br>bellbelbl聲音信號(響鈴)(p)<br>bit_image_repeatbirepXy把位映像單元重復(fù)#1#2次(使用tparm)<br>bit_image_newlinebinelZz移動到位映像的下一行(使用tparm)<br>bit_image_carriage_return &nbsp; bicr &nbsp;Yv移動到同一行的開頭(使用tparm)<br>carriage_returncrcr回車(p*)<br>change_char &nbsp;_pitch &nbsp; cpiZA改變?yōu)槊坑⒋?個字符<br>change_line_pitchlpiZB改變?yōu)槊坑⒋?行<br>change_res_horzchrZC改變水平解度<br>change_res_vertcvrZD改變垂直解析度<br>change_scroll_region &nbsp; &nbsp; csrcs把滾動區(qū)改變?yōu)閺?1行到#2行(VT100)(PG)<br>char &nbsp;_paddingrmprP與ip相似,但它用在插入模式中<br>char &nbsp;_set_namescsnmZy字符集名稱的列表<br>clear_all_tabstbcct清除所有的制表符停止(p)<br>clear_marginsmgcMC清除所有的頁邊<br>clear_screenclearcl清除屏幕和home光標(p*)<br>clr_bolel1cb清除到行首<br>clr_eolelce清除到行尾(P)<br>clr_eosedcd清除到顯示的末尾(p*)<br>code_set_initcsinci多個代碼集合的初始化序列<br>color_namescolornmYw#1號顏色的名稱<br>column_addresshpach設(shè)置光標列(PG)<br>command_char &nbsp;acter &nbsp; cmdchCC在原型中終端可以設(shè)置的cmd字符<br>cursor_addresscupcm屏幕光標移動到#1行#2列(PG)<br>cursor_downcud1do下移一行<br>cursor_homehomehoHome光標(如果沒有環(huán)的話)<br>cursor_invisiblecivisvi使光標不可見<br>cursor_leftcub1le把光標向左移一個空格<br>cursor_mem_address &nbsp;mrcupCM內(nèi)存相對的光標尋址<br>cursor_normalcnormve使光標以最普通的外形顯示(undovs/vi)<br>cursor_rightcuf1nd不具有破壞性的空白(光標向右移)<br>cursor_to_llllll最后一行,第一列(如果沒有環(huán)的話)<br>cursor_upcuu1upUpline(光標向上移)<p>cursor_visiblecvvisvs使光標可見<br>define_bit_image_region &nbsp;defbiYx定義方形的位映像區(qū)(使用tparm)<br>define_char &nbsp;defcZE定義字符集中的某個字符<br>delete_char &nbsp;acterdch1dc刪除字符(p*)<br>delete_linedl1dl刪除行(p*)<br>device_typedevtdv顯示語言/代碼集支持<br>dis_status_linedslds關(guān)閉狀態(tài)行<br>display_pc_char &nbsp;dispcS1顯示PC字符<br>down_half_linehdhd向下移動半行(向前換1/2行)<br>ena_acsenacseA使能另一個字符集合<br>end_bit_image_region &nbsp;endbi Yy結(jié)束位映像區(qū)(使用tparm)<br>enter_alt_char &nbsp;set_mode &nbsp;smacs &nbsp; &nbsp; as開始另一個字符集(p)<br>enter_am_modesmamSA打開自動對齊特征<br>enter_blink_modeblink &nbsp; &nbsp; &nbsp; mb打開字符閃爍效果<br>enter_bold_modeboldmd打開粗體(特別亮)模式<br>enter_ca_modesmcupti啟動使用環(huán)的程序的字符串<br>enter_delete_modesmdcdm刪除模式(輸入)<br>enter_dim_modedimmh打開半亮模式<br>enter_doublewide_mode &nbsp;swidm &nbsp; &nbsp;ZF使能雙倍寬度模式<br>enter_draft_qualitysdrfqZG設(shè)置草圖效果的打印方式<br>enter_insert_modesmirim插入模式(輸入)<br>enter_italics_modesitmZH使能斜體字模式<br>enter_leftward_mode &nbsp; &nbsp; &nbsp; slmZI使能向左回車移動<br>enter_micro_modesmicmZJ使能宏移動功能<br>enter_near_letter_quality &nbsp;snlqZK設(shè)置NLQ打印<br>enter_normal_quality &nbsp; &nbsp; snrmqZL設(shè)置一般質(zhì)量的打印方式<br>enter_pc_char &nbsp;set_mode smpch &nbsp; &nbsp; S2輸入PC字符顯示模式<br>enter_protected_mode &nbsp; &nbsp; &nbsp;protmp打開保護模式<br>enter_reverse_mode &nbsp; &nbsp; &nbsp; &nbsp; revmr打開反轉(zhuǎn)視頻模式<br>enter_scancode_mode &nbsp; &nbsp;smscS4輸入PC掃描碼<br>enter_secure_mode &nbsp; &nbsp; &nbsp; &nbsp;invismk打開空白模式(字符不可見)<br>&lt;/Content&gt;<br>&lt;PostDateTime&gt;2002-08-31 09:29:00&lt;/PostDateTime&gt;<br>&lt;/Reply&gt;&lt;Reply&gt;<br>&lt;PostUserNickName&gt;&lt;/PostUserNickName&gt;<br>&lt;rank&gt;四級(中級)&lt;/rank&gt;<br>&lt;ranknum&gt;user4&lt;/ranknum&gt;<br>&lt;credit&gt;97&lt;/credit&gt;<br>&lt;ReplyID&gt;6339230&lt;/ReplyID&gt;<br>&lt;TopicID&gt;984818&lt;/TopicID&gt;<br>&lt;PostUserId&gt;202193&lt;/PostUserId&gt;<br>&lt;PostUserName&gt;qisiwole&lt;/PostUserName&gt;<br>&lt;Point&gt;0&lt;/Point&gt;<br>&lt;Content&gt;enter_shadow_mode &nbsp; &nbsp; &nbsp; sshmZM使能陰影打印模式<br>enter_standout_mode &nbsp; &nbsp; &nbsp;smso &nbsp;so開始標準輸出模式<br>enter_subscript_mode &nbsp; &nbsp; ssubm &nbsp; &nbsp; &nbsp;ZN使能下標打印<br>enter_superscript_mode &nbsp; &nbsp;ssupm &nbsp; ZO使能上標打印<br>enter_underline_mode &nbsp; &nbsp; &nbsp; &nbsp;smul &nbsp; &nbsp; &nbsp; us開始下劃線模式<br>enter_upward_mode &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sum &nbsp; &nbsp; &nbsp; ZP使能向上回車移動<br>enter_xon_modesmxonSX打開xon/xoff握手機制<br>erase_char &nbsp;sechec刪除#1個字符(PG)<br>exit_alt_char &nbsp;set_mode &nbsp; &nbsp; &nbsp; rmacs &nbsp; &nbsp;ae終止可選的字符集(P)<br>exit_am_modermamRA關(guān)閉自動對齊方式<br>exit_attribute_mode &nbsp; &nbsp;sgr0me關(guān)閉所有屬性<br>exit_ca_modermcupte終止使用環(huán)的程序的字符串<br>exit_delete_modermdced終止刪除模式<br>exit_doublewide_mode &nbsp; rwidm &nbsp; &nbsp; ZQ關(guān)閉雙倍寬度打印方式<br>exit_insert_modermirei結(jié)束插入模式<br>exit_italics_moderitmZR關(guān)閉斜體打印模式<p>exit_leftward_moderlmZS使能右向(普通的)回車移動<br>exit_micro_modermicmZT關(guān)閉宏移動能力<br>exit_pc_char &nbsp;set_mode &nbsp; rmpch &nbsp; &nbsp; &nbsp;S3關(guān)閉PC字符顯示<br>exit_scancode_mode &nbsp; &nbsp; &nbsp; &nbsp;rmsc &nbsp; &nbsp; &nbsp;S5關(guān)閉PC掃描碼模式<br>exit_shadow_mode &nbsp; &nbsp;rshmZU關(guān)閉陰影打印模式<br>exit_standout_mode &nbsp; &nbsp;rmsose結(jié)束標準輸出模式<br>exit_subscript_mode &nbsp; &nbsp;rsubmZV關(guān)掉下標打印方式<br>exit_superscript_mode &nbsp; rsupm &nbsp; &nbsp; ZW關(guān)掉上標打印方式<br>exit_underline_mode &nbsp; &nbsp; rmulue結(jié)束下劃線模式<br>exit_upward_moderumZX打開向下(普通的)回車移動<br>exit_xon_modermxonRX關(guān)掉xon/xoff握手機制<br>flash_screenflashvb可視響鈴(不能移動光標)<br>form_feedffff硬拷貝終端頁面的換頁(p*)<br>from_status_linefslfs從狀態(tài)行返回<br>init_1stringis1i1終端初始化字符串<br>init_2stringis2i2終端初始化字符串<br>init_3stringis3i3終端初始化字符串<br>init_fileifif所包含的文件名稱<br>init_progiprogiP初始化程序的路徑名<br>initialize_colorinitcIc初始化顏色的定義<br>initialize_pairinitpIp初始化顏色對<br>insert_char &nbsp;acterich1ic插入字符(P)<br>insert_lineil1al加入一個新的空白行(p*)<br>insert_paddingipip在插入的字符之后再插入填充字符(p*)<br>key_a1ka1K1小鍵盤左上方的鍵<br>key_a3ka3K3小鍵盤右上方的鍵<br>key_b2kb2K2小鍵盤中央的鍵<br>key_backspacekbskb由回退鍵所發(fā)送<br>key_begkbeg1開始鍵<br>key_btabkcbtkB向右一tab鍵<br>key_c1kc1K4小鍵盤左下角的鍵<br>key_c3kc3K5小鍵盤右下角的鍵<br>key_cancelkcan2取消鍵<br>key_catabktbcka由clear_all_tabs鍵發(fā)送<br>key_clearkclrkC由清除屏幕或者刪除鍵發(fā)送<br>key_closekclo3關(guān)閉鍵<br>key_commandkcmd4命令鍵<br>key_copykcpy5拷貝鍵<br>key_createkcrt6創(chuàng)建鍵<br>key_ctabkctabkt由clear_tab鍵發(fā)送<br>key_dckdch1kD由刪除字符鍵發(fā)送<br>key_dlkdl1kL由刪除行鍵發(fā)送<br>key_downkcud1kd由終端向下光標鍵發(fā)送<br>key_eickrmirkM在插入模式中由rmir或smir發(fā)送<br>key_endkend7結(jié)束鍵<br>key_enterkent8輸入/發(fā)送鍵<br>key_eolkelkE由clear_to_end_of_line鍵發(fā)送<p>key_eoskedkS由clear_to_end_of_screen鍵發(fā)送<br>key_exitkext9退出鍵<br>key_findkfnd0查找鍵<br>key_helpkhlp%1幫助鍵<br>key_homekhomekh由home鍵發(fā)送<br>key_ickich1kl由inschar &nbsp;/enterinsmode鍵發(fā)送<br>key_ilkil1kA由插入行發(fā)送<br>key_leftkcub1kl由終端向左鍵發(fā)送<br>key_llkllkH由home_down鍵發(fā)送<br>key_markkmrk%2標記鍵<br>key_messagekmsg%3消息鍵<br>key_movekmov%4移動鍵<br>key_nextknxt%5下一個鍵<br>key_npageknpkN由下頁鍵發(fā)送<br>key_openkopn%6打開鍵<br>key_optionskopt%7選項鍵<br>key_ppagekppkP由前頁鍵發(fā)送<br>key_previouskprv%8前一鍵<br>key_print &nbsp;kprt%9打印鍵<br>key_redokrdo%0redo鍵<br>key_refrencekref&amp;amp&#59;1引用鍵<br>key_refreshkrfr&amp;amp&#59;2刷新鍵<br>key_replacekrpl&amp;amp&#59;3替換鍵<br>key_restartkrst&amp;amp&#59;4重啟鍵<br>key_resumekres&amp;amp&#59;5恢復(fù)鍵<br>key_rightkcuf1kr由終端向右鍵發(fā)送<br>key_saveksav&amp;amp&#59;6保存鍵<br>key_sbegkBEG&amp;amp&#59;9按下開始鍵的同時按下shift鍵<br>key_scancelkCAN&amp;amp&#59;0按下取消鍵的同時按下shift鍵<br>key_scommandkCMD*1按下命令鍵的同時按下shift鍵<br>key_scopykCPY*2按下拷貝鍵的同時按下shift鍵<br>key_screatekCRT*3按下創(chuàng)建鍵的同時按下shift鍵<br>key_sdckDC*4按下刪除字符鍵的同時按下shift鍵<br>key_sdlkDL*5按下刪除行鍵的同時按下shift鍵<br>key_selectkslt*6選擇鍵<br>key_sendkEND*7按下結(jié)束鍵的同時按下shift鍵<br>key_seolkEOL*8按下行尾鍵的同時按下shift鍵<br>key_sexitkEXT*9按下退出鍵的同時按下shift鍵<br>key_sfkindkF由前滾/下滾鍵發(fā)送<br>key_sfindkFND*0按下查找鍵的同時按下shift鍵<br>key_shelpkHLP#1按下幫助鍵的同時按下shift鍵<br>key_shomekHOM#2按下Home鍵的同時按下shift鍵<br>key_sickIC#3按下插入字符鍵的同時按下shift鍵<br>key_sleftkLFT#4按下向左鍵的同時按下shift鍵<br>key_smessagekMSG%a按下消息鍵的同時按下shift鍵<br>key_smovekMOV%b按下移動鍵的同時按下shift鍵<br>key_snextkNXT%c按下向后鍵的同時按下shift鍵<p>key_soptionskOPT%d按下選項鍵的同時按下shift鍵<br>key_spreviouskPRV%e按下向前鍵的同時按下shift鍵<br>key_sprint &nbsp;kPRT%f按下打印鍵的同時按下shift鍵<br>key_srkrikR由后滾/下滾鍵發(fā)送<br>key_sredokRDO%g按下redo鍵的同時按下shift鍵<br>key_sreplacekRPL%h按下替換鍵的同時按下shift鍵<br>key_srightkRIT%l按下向右鍵的同時按下shift鍵<br>key_srsumekRES%j按下恢復(fù)鍵的同時按下shift鍵<br>key_ssavekSAV!1按下保存鍵的同時按下shift鍵<br>key_ssuspendkSPD!2按下中斷鍵的同時按下shift鍵<br>key_sundokUND!3按下取消鍵的同時按下shift鍵<br>key_stabkhtskT由set_tab鍵發(fā)送<br>key_suspendkspd&amp;amp&#59;7中斷鍵<br>key_undokund&amp;amp&#59;8取消鍵<br>key_upkcuulku由終端的向上鍵發(fā)送<br>keypad_localrmkxke不處于“小鍵盤發(fā)送”方式之中<br>keypad_xmitsmkxks把終端置為“小鍵盤發(fā)送”方式<br>lab_f0lf0l0如果不是f0的話,則為功能鍵f0的標簽<br>&lt;/Content&gt;<br>&lt;PostDateTime&gt;2002-08-31 09:30:00&lt;/PostDateTime&gt;<br>&lt;/Reply&gt;&lt;Reply&gt;<br>&lt;PostUserNickName&gt;&lt;/PostUserNickName&gt;<br>&lt;rank&gt;一級(初級)&lt;/rank&gt;<br>&lt;ranknum&gt;user1&lt;/ranknum&gt;<br>&lt;credit&gt;100&lt;/credit&gt;<br>&lt;ReplyID&gt;6339448&lt;/ReplyID&gt;<br>&lt;TopicID&gt;984818&lt;/TopicID&gt;<br>&lt;PostUserId&gt;200455&lt;/PostUserId&gt;<br>&lt;PostUserName&gt;linuxman2002&lt;/PostUserName&gt;<br>&lt;Point&gt;0&lt;/Point&gt;<br>&lt;Content&gt;up<br>&lt;/Content&gt;<br>&lt;PostDateTime&gt;2002-08-31 09:46:00&lt;/PostDateTime&gt;<br>&lt;/Reply&gt;&lt;Reply&gt;<br>&lt;PostUserNickName&gt;&lt;/PostUserNickName&gt;<br>&lt;rank&gt;四級(中級)&lt;/rank&gt;<br>&lt;ranknum&gt;user4&lt;/ranknum&gt;<br>&lt;credit&gt;97&lt;/credit&gt;<br>&lt;ReplyID&gt;6339495&lt;/ReplyID&gt;<br>&lt;TopicID&gt;984818&lt;/TopicID&gt;<br>&lt;PostUserId&gt;202193&lt;/PostUserId&gt;<br>&lt;PostUserName&gt;qisiwole&lt;/PostUserName&gt;<br>&lt;Point&gt;0&lt;/Point&gt;<br>&lt;Content&gt;lab_f1lf1l1如果不是f1的話,則為功能鍵f1<p>的標簽<br>lab_f2lf2l2如果不是f2的話,則為功能鍵f2<p>的標簽<br>lab_f3lf3l3如果不是f3的話,則為功能鍵f3<p>的標簽<br>lab_f4lf4l4如果不是f4的話,則為功能鍵f4<p>的標簽<br>lab_f5lf5l5如果不是f5的話,則為功能鍵f5<p>的標簽<br>lab_f6lf6l6如果不是f5的話,則為功能鍵f6<p>的標簽<br>lab_f7lf7l7如果不是f7的話,則為功能鍵f7<p>的標簽<br>lab_f8lf8l8如果不是f8的話,則為功能鍵f8<p>的標簽<br>lab_f9lf9l9如果不是f9的話,則為功能鍵f9<p>的標簽<br>lab_f10lf10la如果不是f10的話,則為功能鍵<p>f10的標簽<br>label_onsmlnLO打開軟標簽<br>label_offrmlnLF關(guān)閉軟標簽<br>meta_offrmmmo關(guān)閉“元模式”<br>meta_onsmmmm打開“元模式”(8位)<br>micro_column_address &nbsp; &nbsp;mhpa &nbsp; &nbsp;ZY近似宏調(diào)整的列—地址,<br>micro_downmcud1ZZ近似宏調(diào)整的光標—向下<br>micro_leftmcutb1Za近似宏調(diào)整的光標—向左<br>micro_rightmcuf1Zb近似宏調(diào)整的光標—向右<br>micro_row_address &nbsp; &nbsp; mvpaZc近似宏調(diào)整的行—地址<br>micro_upmcuu1Zd近似宏調(diào)整的光標—向上<br>newlinenelnw新行(行為近似于cr后跟lf)<br>order_of_pinsporderZe匹配軟件以及打印頭中的針<br>orig_colorsococ重置所有的顏色對<br>orig_pairopop把默認的顏色對設(shè)置為原始的那<p>個<br>pad_char &nbsp;padpc填充字符(非空)<br>parm_dchdchDC刪除#1字符(PG*)<br>parm_delete_linedlDL刪除#1行(PG*)<br>parm_down_cursor &nbsp; cudDO把光標向下移#1行(PG*)<br>parm_down_micro &nbsp; mcudZf近似宏調(diào)用的cub<p>parm_ichichIC插入#1個空白符號(PG*)<br>parm_indexindnSF向上滾動#1行(PG)<br>parm_insert_lineilAL加入#1個新的空白行(PG*)<br>parm_left_cursorcubLE把光標向左移#1個空格(PG)<br>parm_left_micromcubZg近似宏調(diào)整中的cub<br>parm_right_cursor &nbsp; &nbsp; cufRl把光標向右移#1個空格(PG*)<br>parm_right_micromcufZh近似宏調(diào)整中的cuf<br>parm_rindexrinSR回滾#1行(PG)<br>parm_up_cursorcuuUP把光標上移#1行(PG*)<br>parm_up_micromcuuZi近似宏調(diào)整中的cuu<br>pkey_keypfkeypk把功能鍵#1定義為字符#2的類型<br>pkey_localpflocpl把功能鍵#1定義為執(zhí)行字符串#2<br>pkey_xmitpfxpx把功能鍵#1定義為發(fā)送字符串#2<br>pkey_plabpfxlxl把功能鍵#1定義為發(fā)送#2,并顯<p>示#3<br>plab_normplnpn編程標簽#1,以顯示字符串#2<br>print &nbsp;_screenmc0ps打印屏幕內(nèi)容<br>prtr_nonmc5ppO打開打印機,打印#1個字節(jié)<br>prtr_offmc4pf關(guān)閉打印機<br>prtr_onmc5po打開打印機<br>repeat_char &nbsp;reprp把字符#1重復(fù)#2次(PG*)<br>req_for_inputrfiRF輸入請求<br>reset_1stringrs1r1把終端完全置為sane方式<br>reset_2stringrs2r2把終端完全置為sane方式<br>reset_3stringrs3r3把終端完全置為sane方式<br>reset_filerfrf包含重置字符串的文件名稱<br>restore_cursorrcrc把光標置為上一個屏幕上的位置<br>row_addressvpacv垂直絕對位置(設(shè)置行)(PG)<br>save_cursorscsc保存光標位置(P)<br>scancode_escapescescS7為了掃描碼模擬按下Esc鍵<br>scroll_forwardindsf把文本向上滾動(P)<br>scroll_reverserisr把文本向下滾動(P)<br>select_char &nbsp;_setscsZj選擇字符集<br>set0_des_seqs0dss0切換到代碼集0(EUC集0,ASCII)<br>set1_des_seqs1dss1切換到代碼集1<br>set2_des_seqs2dss2切換到代碼集2<br>set3_des_seqs3dss3切換到代碼集3<br>set_a_backgroundsetabAB使用ANSI設(shè)置背景顏色<br>set_a_foregroundsetafAF使用ANSI設(shè)置前景顏色<br>set_attributessgrsa定義視頻屬性(PG9)<br>set_backgroundsetbSb設(shè)置當前背景顏色<br>set_bottom_marginsmgbZk設(shè)置當前行的底部邊界<br>set_bottom_margin_parm &nbsp; &nbsp;smgbp &nbsp;ZI從bottomset_color_band的#1行<p>或#2行設(shè)置底行<br>setcolorYz改變#1號色帶顏色<br>set_color_pairscpsp設(shè)置當前顏色對<br>set_foregroundsetfSf設(shè)置當前前景色<br>set_left_marginsmglML設(shè)置當前行的左邊界<br>set_left_margin_parm &nbsp; smglpZm在#1行(#2行)設(shè)置左(右)邊界<p>set_lr_marginsmglrML設(shè)置左右邊界<br>set_page_lengthslinesYZ把頁的長度設(shè)置為#1行(使用<p>tparm)<br>set_right_marginsmgrMR把右邊界設(shè)置為當前列<br>set_right_margin_parm &nbsp; &nbsp; &nbsp; smgrp &nbsp; &nbsp; Zn把右邊界設(shè)置為#1列<br>set_tabhtsst在當前列的所有行設(shè)置制表符<br>set_tb_marginsmgtbMT設(shè)置上下邊界<br>set_top_marginsmgtZo把上邊界設(shè)置為當前行<br>set_top_margin_parm &nbsp; &nbsp; &nbsp; &nbsp;smgtp &nbsp; &nbsp; Zp把上邊界設(shè)置為#1行<br>set_WINDOW &nbsp;windwi當前窗口是從#1行到#2行,從#3<p>列到#4列<br>start_bit_imagesbimZq開始打印位映像圖形<br>start_char &nbsp;_set_def &nbsp; scsdZr開始定義字符集<br>stop_bit_imagerbimZs結(jié)束打印位映像圖形<br>stop_char &nbsp;_set_def &nbsp; &nbsp; &nbsp;rcsdZt結(jié)束定義字符集<br>subscript_char &nbsp;acters &nbsp; &nbsp; &nbsp; &nbsp;subcs &nbsp; &nbsp; &nbsp;Zu下標字符的列表<br>superscript_char &nbsp;acters &nbsp; &nbsp;supcs &nbsp; &nbsp; &nbsp;Zv 上標字符的列表<br>tabhtta跳轉(zhuǎn)到下面8個空格硬件的制表<p>符位置<br>these_cause_crdocrZw這些字符導(dǎo)致CR<br>to_status_linetslts跳到狀態(tài)行,第1列<br>underline_char &nbsp;ucuc給某字符劃下劃線,并移過它<br>up_half_linehuhu上移半行(反轉(zhuǎn)1/2行)<br>xoff_char &nbsp;actercoffcXFXON字符<br>xon_char &nbsp;acterxoncXNXOFF字符<p>(下面的字符串權(quán)能是在SYSVr終端結(jié)構(gòu)中定義的,但在man幫助信息中還<p>未作描述,對<br>它們的解釋是從終端結(jié)構(gòu)頭文件中得到的。)<p>label_formatflnLf??<br>set_clocksclkSC設(shè)置時鐘<br>display_clockdclkDK顯示時鐘<br>remove_clockrmclkRC刪除時鐘<br>create_WINDOW &nbsp;cwinCW把窗口#1定義為從#2行,#3列到#4<p>行,#5列<br>goto_WINDOW &nbsp;wingoWG跳到窗口#1<br>hanguphupHU掛起電話<br>dial_phonedialDI撥電話號碼#1<br>quick_dialqdialQD撥電話號碼#1,但不做進度檢查<br>tonetoneTO選擇接觸聲調(diào)撥叫<br>pulsepulsePU選擇脈沖撥叫<br>flash_hookhookfh閃光切換分支<br>fixed_pausepausePA暫停2~3秒<br>wait_tonewaitWA等待撥叫聲音<br>user0u0u0用戶字符串#0<br>user1u1u1用戶字符串#1<br>user2u2u2用戶字符串#2<br>user3u3u3用戶字符串#3<br>user4u4u4用戶字符串#4<br>user5u5u5用戶字符串#5<br>user6u6u6用戶字符串#6<br>user7u7u7用戶字符串#7<br>user8u8u8用戶字符串#8<br>user9u9u9用戶字符串#9<br>get_mousegetmGmsurses &nbsp; 應(yīng)獲得按鈕事件<br>key_mousekmousKm??<br>mouse_infominfoMi鼠標狀態(tài)信息<br>pc_term_optionspctrmS6PC終端選項<br>req_mouse_posreqmpRQ請求鼠標位置報告<br>zero_motionzeromZx后繼字符沒有移動<br>---------------------------------------------------------------------<br>大半年前看ncurses庫的筆記<br>共享一下吧。

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美在线观看| 欧美日韩一区二区三区在线| eeuss鲁片一区二区三区| 色视频欧美一区二区三区| 欧美福利视频一区| 久久久综合视频| 日韩码欧中文字| 久久精品999| 色综合久久久网| 欧美va在线播放| 亚洲欧洲无码一区二区三区| 日韩国产欧美在线视频| 成人av电影在线播放| 欧美日韩卡一卡二| 国产欧美一区二区在线| 午夜精品影院在线观看| 国产精品一区二区三区网站| a美女胸又www黄视频久久| 欧美精品国产精品| 国产精品久久毛片av大全日韩| 性欧美疯狂xxxxbbbb| 国产成人精品一区二区三区四区 | 国产视频一区二区三区在线观看| 亚洲男人电影天堂| 国产一区二区网址| 欧美日本一区二区三区| 国产精品久久久99| 精品中文字幕一区二区小辣椒| 色噜噜狠狠色综合欧洲selulu| 精品国产免费视频| 亚洲国产一区二区三区青草影视| 国产成人在线观看| 日韩亚洲欧美一区二区三区| 一区二区欧美精品| 国产成人av电影| 日韩欧美二区三区| 日韩中文欧美在线| 色婷婷久久久久swag精品| 国产精品视频在线看| 久久 天天综合| 欧美日韩成人在线| 亚洲欧美日韩成人高清在线一区| 国内精品久久久久影院薰衣草| 在线播放一区二区三区| 亚洲天堂免费看| 成人一级黄色片| 久久日韩粉嫩一区二区三区| 日韩不卡手机在线v区| 欧美在线看片a免费观看| 国产精品成人免费| 成人免费高清在线| 国产亚洲精品aa| 久久疯狂做爰流白浆xx| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 国产精品少妇自拍| 粉嫩一区二区三区性色av| 精品久久国产老人久久综合| 日韩不卡在线观看日韩不卡视频| 欧美图片一区二区三区| 一区二区不卡在线视频 午夜欧美不卡在| 粉嫩蜜臀av国产精品网站| 国产香蕉久久精品综合网| 国产精品资源站在线| 精品少妇一区二区三区视频免付费 | 亚洲国产精品久久艾草纯爱| 色拍拍在线精品视频8848| 亚洲男人的天堂av| 97精品久久久午夜一区二区三区| 国产精品久久久久久久久果冻传媒 | 欧美亚洲动漫另类| 亚洲一区国产视频| 欧美在线三级电影| 视频一区二区中文字幕| 91精品国产丝袜白色高跟鞋| 日韩av在线播放中文字幕| 91麻豆精品国产自产在线观看一区| 天天做天天摸天天爽国产一区| 欧美精品在线一区二区三区| 亚洲h动漫在线| 日韩视频一区二区三区在线播放 | 欧美mv日韩mv国产| 国产一区二区在线视频| 国产欧美视频一区二区三区| 丁香婷婷深情五月亚洲| 成人欧美一区二区三区小说| 91美女片黄在线| 亚洲国产精品自拍| 日韩一区二区电影网| 国产一区视频在线看| 国产精品国产馆在线真实露脸| 色综合av在线| 午夜国产不卡在线观看视频| 欧美一区二区三区不卡| 韩国成人福利片在线播放| 日本一区二区三区dvd视频在线| 97se亚洲国产综合自在线 | 欧美色男人天堂| 日韩二区三区在线观看| 精品av久久707| 成人91在线观看| 五月婷婷久久综合| 精品国产99国产精品| 成人国产精品免费网站| 一片黄亚洲嫩模| 精品乱人伦一区二区三区| 成人精品鲁一区一区二区| 一区av在线播放| 欧美精品一区二区三区蜜桃| 成人av资源网站| 日韩电影在线观看一区| 国产三级一区二区| 欧美日韩在线精品一区二区三区激情| 伦理电影国产精品| 最近日韩中文字幕| 91精品国产综合久久精品图片 | 国产精品一二三四区| 国产精品久久免费看| 欧美精品三级在线观看| 亚洲伦在线观看| 日韩一区二区在线播放| 风间由美一区二区三区在线观看| 亚洲午夜在线视频| 国产欧美日韩在线观看| 欧美猛男男办公室激情| 国产一区视频网站| 亚洲在线视频免费观看| 2021中文字幕一区亚洲| 国产一区二区美女诱惑| 亚洲图片欧美综合| 亚洲欧美视频一区| 中文字幕日韩欧美一区二区三区| 国产性天天综合网| 久久影视一区二区| 精品国产免费一区二区三区四区| 69堂成人精品免费视频| 欧美三级视频在线播放| 色噜噜狠狠成人中文综合| 99久久国产综合色|国产精品| 国产一区二区h| 经典一区二区三区| 久久成人免费网| 免费亚洲电影在线| 日本亚洲免费观看| 视频一区视频二区在线观看| 午夜电影久久久| 日韩激情一区二区| 日韩精品亚洲一区二区三区免费| 亚洲成在线观看| 五月婷婷综合网| 日本中文在线一区| 美国精品在线观看| 精品一区二区三区在线观看| 看电影不卡的网站| 韩国三级电影一区二区| 国产一区二区三区观看| 国产精品一线二线三线精华| 国产精品18久久久| 成人性生交大片免费看中文网站| 国产成人欧美日韩在线电影| 国产大陆精品国产| jiyouzz国产精品久久| eeuss国产一区二区三区| 91在线porny国产在线看| 色综合婷婷久久| 欧美性一区二区| 在线成人小视频| 精品国产1区二区| 欧美激情综合五月色丁香| 国产精品传媒视频| 一区二区三区在线高清| 午夜一区二区三区视频| 日本不卡在线视频| 国内不卡的二区三区中文字幕 | 亚洲国产精品欧美一二99| 亚洲sss视频在线视频| 麻豆视频一区二区| 国产精品12区| 色婷婷精品大视频在线蜜桃视频| 在线欧美小视频| 欧美一二三在线| 亚洲国产精品t66y| 亚洲美女电影在线| 天天色 色综合| 国产一区二区三区观看| 99精品黄色片免费大全| 欧美色视频在线观看| 日韩视频一区在线观看| 国产欧美一区视频| 亚洲综合色在线| 久国产精品韩国三级视频| 成人免费av在线| 欧美日韩视频在线一区二区| 精品久久久网站| 亚洲欧美一区二区三区极速播放| 午夜日韩在线电影| 国产成人在线色| 欧美午夜一区二区| 久久一日本道色综合| 亚洲精品视频免费看| 美女一区二区视频|