为什么我填充后只是白色的屏幕而已~
首先使用填充函数之前要确定,需要填充的区域是封闭的,否则会出现全屏填充的情况.
其次还要知道需要填充的区域的边线的颜色.
然后,设置填充模式,用函数setfillstyle()来设置.
最后,用floodfill(x,y,color)来填充,其中,x,y为需要填充的区域的任意一点,color为边线颜色.
#include <stdio.h>
#include <conio.h>
int main(void)
{
int gdriver = DETECT, gmode, errorcode;
int maxx, maxy;
int poly[10];
initgraph(&gdriver, &gmode,"");
errorcode = graphresult();
if (errorcode != grOk)
{
printf("Graphics error: %s",grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1);
}
maxx = getmaxx();
maxy = getmaxy();
poly[0] = 20;
poly[1] = maxy / 2;
poly[2] = maxx - 20;
poly[3] = 20;
poly[4] = maxx - 50;
poly[5] = maxy - 20;
poly[6] = maxx / 2;
poly[7] = maxy / 2;
poly[8] = poly[0];/*保证图形是封闭*/
poly[9] = poly[1];
drawpoly(5, poly);/*一定要是封闭*/
getch();
setfillstyle(1,RED);
floodfill(200,maxy/2-50,15);
getch();
closegraph();
return 0;
}