TC之屏幕颜色的设置和清屏函数

 对于图形模式的屏幕颜色设置, 同样分为背景色的设置和前景色的设置。在
Turbo C中分别用下面两个函数。
  设置背景色:     void far setbkcolor( int color);
  设置作图色:     void far setcolor(int color);
  其中color 为图形方式下颜色的规定数值, 对EGA, VGA显示器适配器, 有关
颜色的符号常数及数值见下表所示。
          表3 有关屏幕颜色的符号常数表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
符号常数     数值   含义       符号常数     数值   含义
───────────────────────────────────
BLACK       0     黑色       DARKGRAY     8     深灰
BLUE       1     兰色       LIGHTBLUE     9     深兰
GREEN       2     绿色       LIGHTGREEN   10     淡绿
CYAN       3     青色       LIGHTCYAN     11     淡青
RED         4     红色       LIGHTRED     12     淡红
MAGENTA     5     洋红       LIGHTMAGENTA   13     淡洋红
BROWN       6     棕色       YELLOW       14     黄色
LIGHTGRAY     7     淡灰       WHITE       15     白色
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  对于CGA适配器, 背景色可以为表3中16种颜色的一种, 但前景色依赖于不同
的调色板。共有四种调色板, 每种调色板上有四种颜色可供选择。不同调色板所
对应的原色见表4。
          表4 CGA调色板与颜色值表
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    调色板                     颜色值
───────────     ──────────────────
符号常数   数值         0       1       2       3
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    C0     0           背景     绿     红     黄
    C1     1           背景     青     洋红     白
    C2     2           背景     淡绿     淡红     黄
    C3     3           背景     淡青   淡洋红     白
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


  清除图形屏幕内容使用清屏函数, 其调用格式如下:
  voide far cleardevice(void);
  有关颜色设置、清屏函数的使用请看例8。
  例8:
  #include<stdio.h>
  #include<graphics.h>
  int main()
  {
      int gdriver, gmode, i;
      gdriver=DETECT;
      registerbgidriver(EGAVGA_DRIVER);/*建立独立图形运行程序*/
      initgraph(&gdriver, &gmode", "");/*图形初始化*/
      setbkcolor(0);             /*设置图形背景*/
      cleardevice();
      for(i=0; i<=15; i++)
      {
        setcolor(i);             /*设置不同作图色*/
        circle(320, 240, 20+i*10);   /*画半径不同的圆*/
        delay(100);             /*延迟100毫秒*/
      }
      for(i=0; i<=15; i++)
      {
        setbkcolor(i);           /*设置不同背景色*/
        cleardevice();
        circle(320, 240, 20+i*10);
        delay(100);
      }
      closegraph();
      return 0;
  }

  另外, TURBO C也提供了几个获得现行颜色设置情况的函数。
  int far getbkcolor(void);     返回现行背景颜色值。
  int far getcolor(void);     返回现行作图颜色值。
  int far getmaxcolor(void);   返回最高可用的颜色值。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值