急问:怎样在界面上画点,画线??
急问:怎样在FORM上画点,画线?? 问题点数:0、回复次数:14Top
1 楼benben1hao(奔奔一号)回复于 2003-06-04 13:58:24 得分 0
????Top
2 楼joymachines(www.chinabcb.com)回复于 2003-06-04 14:09:34 得分 0
Form1->Canvas->MoveTo(int x,int y);
Form1->Canvas->LineTo(
就这样Top
3 楼joymachines(www.chinabcb.com)回复于 2003-06-04 14:10:26 得分 0
把分都给我吧,我快升级了Top
4 楼vitalord(vitalord)回复于 2003-06-04 14:11:54 得分 0
利用FORM的CANVAS属性进行操作。
如:
void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Pen->Color=clBlack;
Canvas->Pen->Mode=pmCopy;
Canvas->Pen->Style=psSolid;
Canvas->LineTo(90,90);
Canvas->MoveTo(180,180);
}Top
5 楼qibo999(行路者)回复于 2003-06-04 14:26:19 得分 0
你们可真快!同意Top
6 楼benben1hao(奔奔一号)回复于 2003-06-04 14:33:09 得分 0
还有怎么画点呢?Top
7 楼qibo999(行路者)回复于 2003-06-04 14:40:15 得分 0
Form1->Canvas->Pixels[x][y]= clRed;Top
8 楼shanewest1(炉子)回复于 2003-06-04 14:48:45 得分 0
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
Form1->Canvas->MoveTo(X,Y);
}
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
Form1->Canvas->LineTo(X,Y);
}
点同楼上Top
9 楼shanewest1(炉子)回复于 2003-06-04 14:50:00 得分 0
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
Form1->Canvas->MoveTo(X,Y);
Flag = true;
}
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift,
int X, int Y)
{
if(Flag)
Form1->Canvas->LineTo(X,Y);
}
呵呵,这样更好Top
10 楼hitbabiq(仰天长啸)回复于 2003-06-04 16:26:43 得分 0
upTop
11 楼HITGB(我爱风铃)回复于 2003-06-04 16:50:12 得分 0
书上都有Top
12 楼yangfan369(扬帆远行)回复于 2003-06-04 19:37:15 得分 0
chi leTop
13 楼slhuang(★Shawn★)回复于 2003-06-04 19:41:53 得分 0
如果想画点的话还可以这样:
void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
{
Canvas->Pen->Color=clRed;
Canvas->Pen->Width=20; // 这里的数字可以让你画你想要那么大的点
Canvas->MoveTo(0,0);
Canvas->LineTo(X,Y);
}
Top
14 楼sbbmu(蛋白芯片)回复于 2003-06-05 02:53:51 得分 0
在Form的Canvas上画得东东不能自动刷新,被别的窗口遮住后再现的时候画的东东就没了,
最好使用Image->Canvas来画,TImage可以自动刷新,不需要自己重画,简单许多。
画的方法就是上面讲的。Top



