| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1264 人关注过本帖
标题:谁给我解释一下这个错误?
取消只看楼主 加入收藏
vincinzhao
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-25
收藏
 问题点数:0 回复次数:4 
谁给我解释一下这个错误?
我编的一段程序在编译时老是出现这个错误,哪位能给解释一下/谢了!
E2089 Identifier 'Button2Click' cannot have a type qualifier
搜索更多相关主题的帖子: qualifier 解释 Identifier cannot type 
2006-04-25 09:45
vincinzhao
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-25
收藏
得分:0 
毕业设计急啊
帮帮忙,谢谢!
2006-04-25 09:45
vincinzhao
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-25
收藏
得分:0 

这是出错的那段程序,函数声明,变量定义都在一开始就定义完了
void __fastcall TForm1::Button2Click(TObject *Sender)
{ Px1=StrToFloat(EditXbegin->Text);
Px2=StrToFloat(EditXend->Text);
Py1=StrToFloat(EditYbegin->Text);
Py2=StrToFloat(EditYend->Text);
if(Px1==Px2&&Py1==Py2)
ShowMessage( "sorry,the number you enter is wrong");//此处有问题,需要结束插补
if( line->Checked==true&&arc->Checked==false)
{x1=Px1*100;
x2=Px2*100;
y1=Py1*100;
y2=Py2*100;
Xo=(int)x1;
Xe=(int)x2;
Yo=(int)y1;
Ye=(int)y2;
Sx=panduan(Xe,Xo);
Sy=panduan(Ye,Yo);//注意,再将坐标转化为脉冲后,在坐标方向的走步是否能合作表象符合不可知!
Fx=0;
Fy=0;//终点判断位设初值
V=StrToFloat(EditV->Text);
Qi=StrToFloat(EditT->Text);
Qd=V*Qi;
FRN=V*sqr(Xe*Xe+Ye*Ye);
Qd=FRN*Qi;
OX=Xe*Qd;
OY=Ye*Qd;
if(abs(Xe-Xo)>abs(Ye-yo))C=abs(Xe-Xo);
else c=abs(Ye-yo);
X[0]=Xe;
for(i=1;i<=C;i++)
{
Lab1:
if(Fx=0)
{
if((X[i]-Xe)*Sx>0)
{OX=Xe-X[i-1];
X[i]=Xe,Fx=1;}
else goto(Lab2);
}
else goto(Lab2);
Lab2:
if(Fy=0)
{
if((Y[i]-Ye)*Sy>0)
{OY=Ye-Y[i-1];
Y[i]=Xe,Fy=1;}
else goto(Lab3);
}
else goto(Lab3);
Lab3:
if(Fx&&fFy)
break;//插补结束
else{if(Fx=0)X[i]=X[i-1]+Sx*OX;
if(Fy=0)Y[i]=Y[i-1]+Sy*OY;
}
Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
}
}
else{int l,R,X[400],Y[400],S[400],Sx,Sy,Psx,Psy;
float F,T,K;

if(Clockwise==true)
{if(Ye-Y0<0)Sx=-1;
else{ if(Ye-Y0>0)Sx=1;
else Sx=sgn(Xe-X0);}
if(Xe-X0<0)Sy=-1;
else{ if(Xe-X0>0)Sy=1;
else Sy=sgn(Ye-Y0);}
Psx=Sy;
Psy=-Sx;
}
else
{if(Ye-Y0<0)Sx=1;
else{ if(Ye-Y0>0)Sx=-1;
else Sx=sgn(Xe-X0);}
if(Xe-X0<0)Sy=1;
else{ if(Xe-X0>0)Sy=-1;
else Sy=sgn(Ye-Y0);}
Psx=-Sy;
Psy=Sx;
}
if(abs(Xe-X0)>abs(Ye-Y0))C=abs(Xe-X0);
else C=abs(Ye-Y0);
X[0]=X0;
Y[0]=Y0;
F=StrToFloat(EditV->Text);
T=StrToFloat(EditT->Text);
l=F*T;
R=sqr((Xe-Rx)*(Xe-Rx)+(Ye-Ry)*(Ye-Ry));
K=l/R;
for(i=1;i<=C;i++)
{OX=K*(Y[i-1]-1/2*K*X[i-1]);
OY=K*(X[i-1]-1/2*K*Y[i-1]);
X[i]=X[i-1]+Sy*OX;
Y[i]=Y[i-1]+Sx*OY;
S[0]=(Xe-X[0])*(Xe-X[0])+(Ye-Y[0])*(Ye-Y[0]);
S[i]=(Xe-X[i])*(Xe-X[i])+(Ye-Y[i])*(Ye-Y[i]);
if(S[i]<S[i-1])
{if((X[i]-Rx)*Psx>0&&(Y[i]-Ry)*Psy>0)
{if(OX>=OY)
{if(X[i]-Xe)*Sx>0)
{OX=Xe-X[i-1];
X[i]=Xe;
OY=Ye-Y[i-1];
Y[i]=Ye;
Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
break;}
else
{Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
continue;}
}
else{if(Y[i]-Ye)*SY>0)
{OX=Xe-X[i-1];
X[i]=Xe;
OY=Ye-Y[i-1];
Y[i]=Ye;
Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
break;}
else
{ Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
continue;}
}
}
else
{Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
continue;}
}
else
{ Image1->Canvas->MoveTo(X[i-1],Y[i-1]);
Image1->Canvas->LineTo(X[i],Y[i]);
continue;}
}
}
}
return 0;}


//---------------------------------------------------------------------------

int panduan(int a,int b)
{int S;
if(a>=b)S=1;
else S=0;
return S;
}//象限判断,返回标志位
int sgn(float a)
{int s;
if(a>=0)s=1;
else s=-1;
return s;}

2006-04-26 08:01
vincinzhao
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-25
收藏
得分:0 

我也不想用啊,没办法。用SWITCH后程序不知道怎么弄了,无奈之举,见笑了。最后的return 0我是为了消除一个错误才加上的,不然老说我missing;啊

2006-04-26 16:40
vincinzhao
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-25
收藏
得分:0 
谢谢各位了!
2006-04-26 16:40
快速回复:谁给我解释一下这个错误?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033266 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved