⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scn.htm

📁 turbo c
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<HTML><HEAD>   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">   <META NAME="Author" CONTENT="wdg">   <META NAME="GENERATOR" CONTENT="Mozilla/4.03 [en] (Win95; I) [Netscape]">   <TITLE>scn</TITLE></HEAD><BODY><P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;字符屏幕函数<P>&nbsp;&nbsp;&nbsp; Turbo C2.0的字符屏幕函数主要包括文本窗口大小的设定、窗口颜色的设置、<BR>窗口文本的清除和输入输出等函数。<P>&nbsp;&nbsp;&nbsp; 1.文本窗口的定义<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0默认定义的文本窗口为整个屏幕, 共有80列(或40列)25行的文本<BR>单元, 每个单元包括一个字符和一个属性, 字符即ASCII 码字符, 属性规定该字<BR>符的颜色和强度。<BR>&nbsp;&nbsp;&nbsp; Turbo C2.0可以定义屏幕上的一个矩形域作为窗口, 使用window()函数定义。<BR>窗口定义之后, 用有关窗口的输入输出函数就可以只在此窗口内进行操作而不超<BR>出窗口的边界。<BR>&nbsp;&nbsp;&nbsp; window()函数的调用格式为:<BR>&nbsp;&nbsp;&nbsp;&nbsp; void window(int left, int top, int right,int bottom);<BR>&nbsp;&nbsp;&nbsp; 该函数的原型在conio.h 中 (关于文本窗口的所有函数其头文件均为conio.h,<BR>后面不再说明)。 函数中形式参数(int left,&nbsp; int top)是窗口左上角的坐标,<BR>(int right, int&nbsp; bottom)是窗口的右下角坐标, 其中(left,&nbsp; top)和(right,<BR>bottom) 是相对于整个屏幕而言的。 Turbo C 2.0规定整个屏幕的左上角坐标为<BR>(1, 1), 右下角坐标为(80, 25)。并规定沿水平方向为 X轴, 方向朝右; 沿垂直<BR>方向为 Y轴, 方向朝下。若window()函数中的坐标超过了屏幕坐标的界限, 则窗<BR>口的定义就失去了意义, 也就是说定义将不起作用, 但程序编译链接时并不出错。<BR>&nbsp;&nbsp;&nbsp; 另外, 一个屏幕可以定义多个窗口, 但现行窗口只能有一个(因为DOS为单任<BR>务操作系统), 当需要用另一窗口时, 可将定义该窗口的window() 函数再调用一<BR>次, 此时该窗口便成为现行窗口了。<BR>&nbsp;&nbsp;&nbsp; 如要定义一个窗口左上角在屏幕(20, 5)处, 大小为30列15行的窗口可写成:<BR>&nbsp;&nbsp;&nbsp;&nbsp; window(20, 5, 50, 25);<P>&nbsp;&nbsp;&nbsp; 2. 文本窗口颜色的设置<BR>&nbsp;&nbsp;&nbsp; 文本窗口颜色的设置包括背景颜色的设置和字符颜色的设置,使用的函数及<BR>其调用格式为:<BR>&nbsp;&nbsp;&nbsp; 设置背景颜色:&nbsp; void textbackground(int color);<BR>&nbsp;&nbsp;&nbsp; 设置字符颜色:&nbsp; void textcolor(int color);<BR>&nbsp;&nbsp;&nbsp; 有关颜色的定义见表1。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;表1. 有关颜色的定义<BR>━━━━━━━━━━━━━━━━━━━━━━━━━━━<BR>&nbsp; 符号常数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 数值&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;含义&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 字符或背景<BR>───────────────────────────<BR>&nbsp; BLACK&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 黑&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; BLUE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 兰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; GREEN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 绿&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; CYAN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 青&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; RED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 红&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; MAGENTA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 洋红&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; BROWN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 棕&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;两者均可<BR>&nbsp; LIGHTGRAY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;淡灰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 两者均可<BR>&nbsp; DARKGRAY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 深灰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;只用于字符<BR>&nbsp; LIGHTBLUE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 9&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;淡兰&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只用于字符<BR>&nbsp; LIGHTGREEN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;淡绿&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只用于字符<BR>&nbsp; LIGHTCYAN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 11&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;淡青&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只用于字符<BR>&nbsp; LIGHTRED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 淡红&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;只用于字符<BR>&nbsp; LIGHTMAGENTA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 13&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;淡洋红&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 只用于字符<BR>&nbsp; YELLOW&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 黄&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;只用于字符<BR>&nbsp; WHITE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 白&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;只用于字符<BR>&nbsp; BLINK&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;128&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 闪烁&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;只用于字符<BR>━━━━━━━━━━━━━━━━━━━━━━━━━━━<BR>&nbsp;&nbsp;&nbsp; 上表中的符号常数与相应的数值等价, 二者可以互换。例如设定兰色背景可<BR>以使用textbackground(1),&nbsp; 也可以使用textbackground(BLUE), 两者没有任何<BR>区别, 只不过后者比较容易记忆, 一看就知道是兰色。<BR>&nbsp;&nbsp;&nbsp; Turbo C另外还提供了一个函数, 可以同时设置文本的字符和背景颜色,<BR>个函数的调用格式为:<BR>&nbsp;&nbsp;&nbsp;&nbsp; void textattr(int attr);<BR>&nbsp;&nbsp;&nbsp; 其中: attr的值表示颜色形式编码的信息, 每一位代表的含义如下:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 位&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;7&nbsp;&nbsp; 6&nbsp;&nbsp; 5&nbsp;&nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp; 2&nbsp;&nbsp; 1&nbsp;&nbsp; 0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;B&nbsp;&nbsp; b&nbsp;&nbsp; b&nbsp;&nbsp; b&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c&nbsp;&nbsp; c&nbsp;&nbsp; c&nbsp;&nbsp; c<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;↓&nbsp; ┕━━━┙&nbsp;&nbsp;&nbsp;&nbsp; ┖─────┘<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;闪烁&nbsp; 背景颜色&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 字符颜色<BR>&nbsp;&nbsp;&nbsp; 字节低四位cccc设置字符颜色(0到15), 4~6三位bbb设置背景颜色(0到7),<BR>第7位B设置字符是否闪烁。假如要设置一个兰底黄字, 定义方法如下:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textattr(YELLOW+(BLUE&lt;&lt;4));<BR>&nbsp;&nbsp;&nbsp; 若再要求字符闪烁, 则定义变为:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textattr(128+YELLOW+(BLUE&lt;&lt;4);<BR>&nbsp;&nbsp;&nbsp; 注意:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (1) 对于背景只有0 到7 共八种颜色, 若取大于7小于15的数, 则代表的<BR>颜色与减 7后的值对应的颜色相同。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (2) 用textbackground()和textcolor()函数设置了窗口的背景与字符颜<BR>色后, 在没有用clrscr()函数清除窗口之前, 颜色不会改变,&nbsp;&nbsp; 直到使用了函数<BR>clrscr(), 整个窗口和随后输出到窗口中的文本字符才会变成新颜色。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (3) 用textattr()函数时背景颜色应左移4位,才能使3位背景颜色移到正<BR>确位置。<BR>&nbsp;&nbsp;&nbsp; 下面这个程序使用了关于窗口大小的定义、颜色的设置等函数,在一个屏幕<BR>上不同位置定义了7个窗口, 其背景色分别使用了7种不同的颜色。<BR>&nbsp;&nbsp;&nbsp; 例1.:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #include &lt;stdio.h><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #include &lt;conio.h><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; main()<BR>&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int i;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; textbackground(0);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* 设置屏幕背景色 */<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; clrscr();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* 清除文本屏幕 */<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=1; i&lt;8;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;window(10+i*5, 5+i, 30+i*5, 15+i); /* 定义文本窗口 */<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;textbackground(i);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* 定义窗口背景色*/<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;clrscr();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* 清除窗口 */<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getch();<BR>&nbsp;&nbsp;&nbsp;&nbsp; }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -