OmO 发表于 2007-5-4 16:30

setcolor(0)的问题

<P>setcolor(0);<BR>是不是设置颜色跟背景颜色相同,<BR>就是说0这个颜色值不是代表黑,而是代表不赋色?<BR><BR>我的程序里,作业颜色设置为0,结果"Yes"的颜色随背景色变化而变化。。。。。。[em06]<BR><BR></P>
<DIV class=htmlcode>
<P>/*---------画一个立体Yes按钮-------*/</P>
<P>#include &lt;stdio.h&gt;<BR>#include &lt;graphics.h&gt;</P>
<P>void bottom_ok(int x,int y);<BR>void init_graph(void);</P>
<P>void main()<BR>{<BR>    int i;</P>
<P>    init_graph();<BR>    for (i=0; i&lt;16; i++)        /*切换背景色*/<BR>    {<BR>        setbkcolor(i);<BR>        bottom_ok(140,140);<BR>        getch();<BR>    }<BR>    closegraph();<BR>}</P>
<P>void init_graph(void)<BR>{<BR>    int gdriver=DETECT, gmode;<BR>    initgraph(&amp;gdriver, &amp;gmode, "c:\\turboc2");<BR>}</P>
<P><BR>void bottom_ok(int x,int y)<BR>{<BR>    setcolor(15);            /*以白色画左边和上边线*/<BR>    line(x,y,x+73,y);<BR>    line(x,y,x,y+21);<BR>                    /*以浅灰色画按钮主体*/<BR>    setfillstyle(1,7);<BR>    bar(x+1,y+1,x+72,y+20);</P>
<P>    setcolor(8);            /*以深灰色画下边和右边线*/<BR>    line(x+1,y+21,x+73,y+21);<BR>    line(x+73,y+1,x+73,y+20);</P>
<P>    setcolor(0);            /*设置字体颜色为黑色*/<BR>    outtextxy(x+25,y+8,"OK");<BR>}</P></DIV>

ba_wang_mao 发表于 2007-5-5 10:22

参见conio.h中的枚举定义<BR>enum COLORS {<BR>    BLACK,   // =0       /* dark colors */<BR>    BLUE,    //=1<BR>    GREEN,   //=2<BR>    CYAN,     //=3<BR>    RED,<BR>    MAGENTA,<BR>    BROWN,<BR>    LIGHTGRAY,<BR>    DARKGRAY,       /* light colors */<BR>    LIGHTBLUE,<BR>    LIGHTGREEN,<BR>    LIGHTCYAN,<BR>    LIGHTRED,<BR>    LIGHTMAGENTA,<BR>    YELLOW,   //=14<BR>    WHITE     //=15<BR>};<BR> BLACK = 0 代表黑色<BR> BLUE=1 代表兰色

页: [1]

编程论坛