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

Could not compile used unit 有关问题

2012-08-09 
Could not compile used unit 问题unit MySubsinterfaceusesMath, Graphicstypefunction Power10N(n:INt

Could not compile used unit 问题
unit MySubs;

interface

uses
  Math, Graphics;
type
  function Power10N(n:INteger):Integer; //计算10的n次方
  function StandReal(x:Real;n:Integer):Real; //计算时数保留n位小数的转换结果
  procedure PaintG(PCanvas:TCanvas;a,b,c:Integer); //在画布上画出一元二次方程的图形
 end;

implementation

  function Power10N(n:INteger):Integer;
  var
  i:Integer;
  Result:=1;
  for i:=1 to n do
  Result:=Result*10;
  end;

  function StandReal(x:Real;n:Integer):Real;
  begin
  Result:=Trunc(Abs(x)*Power10N(n)+0.5)/Power10N(n)*Sign(x);
  end;

  procedure PaintG(PCanvas:TCanvas;a,b,c:Integer);
  var
  x,y,first:Integer;
  begin
  PCanvas.Pen.Color:=clRed; //用红色画坐标线和坐标值
  PCanvas.MoveTo(10,210);
  PCanvas.LineTo(410,210);
  PCanvas.MoveTo(210,10);
  PCanvas.LineTo(210,410);
  PCanvas.TextOut(220,10,'200');
  PCanvas.TextOut(220,400,'-200');
  PCanvas.TextOut(10,220,'-50');
  PCanvas.TextOut(400,220,'50');
  PCanvas.Pen.Color:=clBlue; //用蓝线画函数曲线
  first:=0;
  for x:=-50 to 50 do begin
  y:=a*Sqr(x)+b*x+c;
  if Abs(y)<200 then
  first:=first+1;
  else
  first:=0;
  if first=1 then
  PCanvas.MoveTo(4*x+210,210-y);
  if first=1 then
  PCanvas.LineTo(4*x+210,210-y);
  end;
  end;
end.


[解决办法]
type
...
end;

1.type和end去掉

var
i:Integer;
begin
Result:=1;

2.少了begin

if Abs(y)<200 then
first:=first+1;
else
first:=0;

3.分號去掉

[解决办法]
把btnProject.SetFocus注释掉试试?

热点排行