| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 637 人关注过本帖
标题:编译时出现的这个错误怎解决?
只看楼主 加入收藏
yalewang
Rank: 2
等 级:论坛游民
帖 子:125
专家分:35
注 册:2010-4-15
结帖率:94.74%
收藏
已结贴  问题点数:50 回复次数:6 
编译时出现的这个错误怎解决?
这个错误怎解决?画图时转换坐标时产生的。
Operator not applicable to this operand type 这是错误提示
var
pts:array[1..100] of Tpoint;
shu[1..100] :array of double ;
maxvalue,minvalue:double ;
//////////////////////////////以上变量定义在implement前/////////
..............
i:integer;
begin
for i:=1 to 100 do
   begin
  ..........
   pts[i].Y:=form1.ClientHeight-((shu[i]-minvalue)*form1.ClientHeight div (maxvalue-minvalue));//////////这行错误
  ............
 end;
搜索更多相关主题的帖子: 编译 
2010-07-14 19:14
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:50 
div 用于整数除法
浮点除法用 /
这是delphi比较独特的地方。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-07-15 16:18
yalewang
Rank: 2
等 级:论坛游民
帖 子:125
专家分:35
注 册:2010-4-15
收藏
得分:0 
不行啊,鱼兄。
2010-07-16 02:24
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:0 
原因是这样:
form1.ClientHeight div (maxvalue-minvalue))改为form1.ClientHeight / (maxvalue-minvalue))这里编译已经通过了。
可是你的整句:
pts[i].Y:=form1.ClientHeight-((shu[i]-minvalue)*form1.ClientHeight / (maxvalue-minvalue));是把一个浮点值赋给一个整形变量
(pts的成员类型为longint),所以必须转换类型。
如下:
pts[i].Y:= Round(form1.ClientHeight-((shu[i]-minvalue)*form1.ClientHeight / (maxvalue-minvalue)));

Round 四舍五入求整。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-07-16 08:47
yalewang
Rank: 2
等 级:论坛游民
帖 子:125
专家分:35
注 册:2010-4-15
收藏
得分:0 
我试过round,也不行,将form1.clientheight直接换为500,也不行。
pts(i).y始终为0
2010-07-16 08:54
yalewang
Rank: 2
等 级:论坛游民
帖 子:125
专家分:35
注 册:2010-4-15
收藏
得分:0 
我计算pts是想用Canvas.Polyline(pts)来画图。
坐标转换方法在VB中可以实现,DELPHI是不是像素点有特别的规定?
2010-07-16 09:16
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:0 
delphi的像素点没有什莫特别的,它的Canvas类只是简单对SDK DC的封装。
虽然可以,但不建议自己绘制这样的图像(又累又容易出错)。建议直接用TeeChart来显示。
delphi自带的差点,但也够你用了。要更专业的,可以到google上搜专业PJ版的。

BTW:
我晕,我只是讨论你的语法问题。好像跟你的值没什莫关系吧。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-07-16 11:08
快速回复:编译时出现的这个错误怎解决?
数据加载中...
 
   



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

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