Когда компилирую её, то всё нормально , но когда открываю текстовой файл со столбцом значений через Форму , то вылазит ошибка RunError (3). Что это значит? Как исправить ? Заранее спасибо.
Вот код Юнита 1:
- Код: Выделить всё
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, Menus,
StdCtrls, ExtCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Image1: TImage;
MainMenu1: TMainMenu;
MenuItem1: TMenuItem;
MenuItem10: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
MenuItem4: TMenuItem;
MenuItem5: TMenuItem;
MenuItem6: TMenuItem;
MenuItem7: TMenuItem;
MenuItem8: TMenuItem;
MenuItem9: TMenuItem;
OpenDialog1: TOpenDialog;
procedure MenuItem4Click(Sender: TObject);
procedure OpenDialog1CanClose(Sender: TObject; var CanClose: boolean);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses unit2;
{$R *.lfm}
{ TForm1 }
procedure TForm1.MenuItem4Click(Sender: TObject);
begin
OpenDialog1.Execute;
end;
procedure TForm1.OpenDialog1CanClose(Sender: TObject; var CanClose: boolean);
begin
readdata(OpenDialog1.FileName);
end;
end.
ЮНИТ 2:
- Код: Выделить всё
unit Unit2;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils,FileUtil,stdctrls,math;
var x,y:array[0..100] of real ;
procedure readdata(name: string);
implementation
procedure readdata(name: string);
var f:text;
s:string; n,i,c:integer;
code: integer;
begin
AssignFile(f,name);
Reset(f);
i:=0;
While not eof(f) do
begin
ReadLn(f,s);
Val(s,x[i],c);
ReadLn(f,s);
Val(s,y[i],c);
Inc(i);
end;
CloseFile(f);
n:=i;
end;
end.
padre_mortius: Используйте тег code
Добавлено спустя 14 часов 39 минут 13 секунд:
Да я вообще удалил эту переменную , все равно ошибка