C语言图形编程怎么把图形填充成喜欢的颜色

作者&投稿:乜符 (若有异议请与网页底部的电邮联系)
C语言画图画出图形后如何填充颜色?~

#include
#include
main( )
{
int gd=DETECT,gm;
int z,*w,i;
initgraph(&gd,&gm,"");
setbkcolor(GREEN);
setcolor(RED);
circle(200,200,50);
setcolor(RED);
circle(200,200,30);
setfillstyle(1,YELLOW);
floodfill(200,160,RED);

getch( );
closegraph( );
}

setfillstyle是填充,里面1的填充模式,YELLOW是颜色
floodfill(x,y,z) x,y分别是x坐标,y坐标,只需要在填充的闭合图形里面的任意一点即可,z是最边间曲线的颜色。

MSDN:HDRAWDIB DrawDibOpen(void);

画一个黑色,一个白色两个小位图;
然后依次调用
BOOL DrawDibBegin(
HDRAWDIB hdd,
HDC hdc,
int dxDest,
int dyDest,
LPBITMAPINFOHEADER lpbi,
int dxSrc,
int dySrc,
UINT wFlags
);

不清楚...........

HDC dc = GetDC(g_hWnd);
HBRUSH brush=CreateSolidBrush(RGB(0, 255, 0));
HBRUSH oldbrush=(HBRUSH)SelectObject(dc, brush);
RECT rect;
rect.left = 10;
rect.right = 50;
rect.top = 10;
rect.bottom = 50;
FillRect(dc,&rect , brush);
Ellipse(dc, 60, 60, 100, 100);
SelectObject(dc, oldbrush);
Ellipse(dc, 120, 120, 150, 150);

需要调用API吧.

WINDOWS程序设计C语言的填充颜色啊~~~
答:MSDN:HDRAWDIB DrawDibOpen(void);画一个黑色,一个白色两个小位图;然后依次调用 BOOL DrawDibBegin(HDRAWDIB hdd,HDC hdc,int dxDest,int dyDest,LPBITMAPINFOHEADER lpbi,int dxSrc,int dySrc,UINT wFlags );

c语言如何创建BMP并填充
答:首先读bmp文件头,然后根据bmp宽度*bmp高度 把数据再读进来 不过我读进来数据都是做压缩的 还没有直接拷贝。个人觉得如果只是拷贝,完全没有必要读这些信息 首先获得源文件占用字节大小,然后生成一个相同大小文件直接copy 不处理内部数据的话...

用c语言来画1个正方体,一个简单的程序。。
答:实际上很少这样使用。void far setfillstyle(int pattern, int color); color的值是当前屏幕图形 模式时颜色的有效值,SOLID_FILL 1 以实填充 void far floodfill(int x, int y, int border);其中:x, y为封闭图形内的任意一border为边界的颜色,也就是封闭图形轮廓的 颜色。调用了该函数后,将用...

C语言基础问题,画三角形
答:你描述的输入不清,我调整了一下。其实最重要是分解程序编程一个一个操作。首先要有个画板,然后程序能画线,最后对三角形填充。就是这么简单,三种操作。先来个短的代码:include <stdio.h>#include <math.h>#include <string.h>using namespace std;const int bsize = 64; // 最大画板大小...

C语言蛇形填充数组
答:按照你的要求编写的蛇形填充数组的C语言程序如下 include<stdio.h>int main(){ int a[100][100]; int i,j,k,n,flag=0,data=1; scanf("%d",&n); for(k=0;k<2*n;k++){ if(flag==1){ for(i=0;i<n;i++){ for(j=0;j<n;j++){ if(i==k-j){ a[i][...

C语言 怎样在图形用户界面上画画/换颜色/移动位置?
答:用bar在矩形区域填充颜色,用setcolor设置颜色,都在百科里能看到用法,还有很多函数的,去CSDN吧

c语言编程一个5*5的数组,用0把周围填充
答:include "stdio.h"int main(void){ int a[5][5],i,j; for(i=0;i<5;i++) for(j=0;j<5;j++) if(i==0 || j==0 || i==4 || j==4) a[i][j]=0; else a[i][j]=i+j+1; for(i=0;i<5;i++){ for(j=0;j<5;printf("%2d",a...

C语言编写程序,输入如下图形
答:for (int k = i-1; k >0 ; --k) { cout << k ; } cout << endl; //换行 }}演示效果如下:当然, 除了以上介绍的两种方法外, 还有很多其他的方法来实现,建议有机会可以多看些编程的书籍了解下。望采纳, 谢谢。

C语言中floodfill()函数怎不能填充封闭圆形?
答:上网搜一下floodfill的详细用法,这里顺便指出你的错误所在,首先floodfill()函数中指定的颜色必须是圆的轮廓线颜色,且位置必须在圆的范围内,否则就会出现你所遇到的情况。至于如何设定填充颜色,可以通过调用函数setfillstyle()来设定。还是建议上网搜详细资料!!!

c语言图形函数
答:c语言画圆的函数是cricle(int x,int y,int r);如果要是实心的只能填充:fillflood(int x,int y,int color);但有个办法:fillellipse(int x,int y,int ra,int rb)本来是画实心椭圆的,你把ra和rb的值赋成同样的值就是一个实心圆了......