首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

请问c++画图

2012-03-04 
请教c++画图请教c++画图。原来是在c++builder下画图,直接在Image控件上画。代码如下:voiddraw2d(TImage*Imag

请教c++画图
请教c++画图。原来是在c++builder下画图,直接在Image控件上画。代码如下:
void   draw2d(TImage   *Image)
{
                                                                                        /*画坐标系*/
                Image-> Canvas-> Pen-> Color   =   clBlack;

                Image-> Canvas-> MoveTo(0,Image-> Height/2);
                Image-> Canvas-> LineTo(Image-> Width,Image-> Height/2);
                Image-> Canvas-> MoveTo(0,Image-> Height/2);
                Image-> Canvas-> LineTo(10,Image-> Height/2-3);
                Image-> Canvas-> MoveTo(0,Image-> Height/2);
                Image-> Canvas-> LineTo(10,Image-> Height/2+3);
                Image-> Canvas-> TextOut(5,Image-> Height/2-18, "y ");
                Image-> Canvas-> MoveTo(Image-> Width/2,0);
                Image-> Canvas-> LineTo(Image-> Width/2,Image-> Height);
                Image-> Canvas-> MoveTo(Image-> Width/2,0);
                Image-> Canvas-> LineTo(Image-> Width/2-3,10);
                Image-> Canvas-> MoveTo(Image-> Width/2,0);
                Image-> Canvas-> LineTo(Image-> Width/2+3,10);
                Image-> Canvas-> TextOut(Image-> Width/2-10,0, "z ");
}
程序的形参对应的实参是在窗口中已经添加的一个Image控件,比如调用就直接用draw2d(Image1);。现在我想脱离bcb环境,执行了draw2d()后直接把画的结果保存在一定路径下,那么这个时候的Image应该怎么弄?直接在程序里用TIamge   *Image定义一个吗?谢谢!

[解决办法]
用TBitmap

Graphics::TBitmap *bmp = new Graphics::TBitmap;
bmp-> Width = 200;
bmp-> Height = 200;
bmp-> Canvas-> LineTo(100, 100);
bmp-> SaveToFile( "c:\\aa.bmp ");
delete bmp;

热点排行