초보 wrote:
> 저기 요기는
> 입력은 TTest타입이고
> 출력은 TTest.sum이고
> 두개의 edit1,edit2에 입력된 값을 버튼 클릭하면 label1에 값이 출력되는 프로그램을
> 작성중인데 프로시저를 이용해서 해보려구하는데자꾸에러가 뜹니다...
> 코드는 아래와 같습니다..
> 제발 갈카주세요..
>
> unit Unit1;
>
> interface
>
> uses
> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
> StdCtrls;
>
> type
> TTest= Record
> x:integer;
> y:integer;
> sum:integer;
> end;
>
> TForm1 = class(TForm)
> Edit1: TEdit;
> Edit2: TEdit;
> Button1: TButton;
> Label1: TLabel;
> procedure Button1Click(Sender: TObject);
> procedure AddRecord(var Tmp:TTest);
> private
> { Private declarations }
> public
> { Public declarations }
> Tmp:TTest;
> end;
>
> var
> Form1: TForm1;
>
> implementation
>
> {$R *.DFM}
>
>
> procedure AddRecord(var Tmp:TTest);
>
> begin
> Tmp.sum:=Tmp.x+Tmp.y;
>
> end;
>
> procedure TForm1.Button1Click(Sender: TObject);
> begin
> Tmp.x:=StrToInt(Edit1.Text);
> Tmp.y:=StrToInt(Edit2.Text);
> //Tmp.sum:=Tmp.x+Tmp.y;
> AddRecord(Tmp.sum); //에러
> With Tmp do begin
> Label1.Caption:=IntToStr(sum);
> end;
> end;
> end.
>
AddRecord(Tmp)라고 하셔야 하는 것 아닌가요?