Q&A

  • 에러가 나는데요...왜 그런지 몰라서요,,,
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, StdCtrls, ExtCtrls;

type
  TForm2 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    Panel6: TPanel;
    Panel7: TPanel;
    Panel8: TPanel;
    Panel9: TPanel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5 : TEdit;

    procedure FormActivate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation
uses Unit1;
{$R *.DFM}

procedure TForm2.FormActivate(Sender: TObject);
var
  i,j,tmpAmount:integer;
begin
  {*******************************
    문제1번의 결과를 구한다.
  ********************************}
  // 최대정보이용료 비교
  tmpAmount := DataBuf[1].iAmount;
  j := 1;
  for i := 2 to Cnt do
  begin
    if DataBuf[i].iAmount > tmpAmount then
    begin
      tmpAmount := DataBuf[i].iAmount;
      j := i;
    end;
  end;

  // 변수를 Form에 치환한다.
  Edit1.Text := IntToStr(DataBuf[j].sNumber); //고객번호
  Edit2.Text := IntToStr(DataBuf[j].iAge);       //고객나이
  Edit3.Text := FormatFloat('###,###',DataBuf[j].iAmount); //고객정보이용료

  
  {*******************************
    문제2번의 결과를 구한다.
  ********************************}
  // 최고이용횟수 비교
  tmpAmount := InfoBuf[1].iCount;
  for i := 1 to 5 do
  begin
    if tmpAmount <= InfoBuf[i].iCount then
    begin
      tmpAmount := InfoBuf[i].iCount;
      j := i;
    end;
  end;
  Edit4.Text := InfoBuf[j].sInfoNm; //정보종류명
  Edit5.Text:= IntToStr(InfoBuf[j].iCount) + '번'; //최고이용횟수


  {*******************************
    문제3번의 결과를 구한다.
  ********************************}
  // 타이틀 치환한다.
  StringGrid1.Cells[0,0] := '고객번호';
  StringGrid1.Cells[1,0] := '나이';
  StringGrid1.Cells[2,0] := '정보종류명';
  StringGrid1.Cells[3,0] := '기본요금';
  StringGrid1.Cells[4,0] := '사용시간';
  StringGrid1.Cells[5,0] := '고객정보사용금액';

  // 전체고객테이블을 치환한다.
  for i := 1 to Cnt do
  begin
    StringGrid1.Cells[0, i] := IntToStr(DataBuf[i].sNumber);
    StringGrid1.Cells[1, i] := IntToStr(DataBuf[i].iAge);
    StringGrid1.Cells[2, i] := DataBuf[i].sCode;
    StringGrid1.Cells[3, i] := FormatFloat('###,###', DataBuf[i].iBase)+'원';
    StringGrid1.Cells[4, i] := IntToStr(DataBuf[i].iTime);
    StringGrid1.Cells[5, i] := FormatFloat('###,###', DataBuf[i].iAmount)+'원';
  end;

end;

procedure TForm2.Button1Click(Sender: TObject);
begin
  Close;
end;

end.


에러 내용입니다.
[Error] Unit2.pas(87): Undeclared identifier: 'StringGrid1'
[Error] Unit2.pas(87): Missing operator or semicolon
[Error] Unit2.pas(88): Missing operator or semicolon
[Error] Unit2.pas(89): Missing operator or semicolon
[Error] Unit2.pas(90): Missing operator or semicolon
[Error] Unit2.pas(91): Missing operator or semicolon
[Fatal Error] Unit1.pas(58): Could not compile used unit 'Unit2.pas'

부탁드립니다...
1  COMMENTS
  • Profile
    최용일 2004.04.27 23:22
    안녕하세요. 최용일입니다.

    어디서 소스만 카피하신거 같은데.... 쩝~~

    폼에 TStringGrid를 하나 떨궈놓고 컴파일해보세요...

    ^^ 항상 즐코하세요...