Q&A

  • 아무값도 대입안하고 오케이버튼 누르면 에러가 나요
제가 짠건데 두 점 좌표를 넣고
한점 엑스 좌표 알때 다른 와이 좌표 구하는건데요..
아무것도 대입안하고 오케이버튼 누르면 오류가 나네요...
이제 3일 공부했는데 어렵네요..

unit y3;

interface

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

type
TForm1 = class(TForm)
   Label1: TLabel;
   Label2: TLabel;
   Label3: TLabel;
   Label4: TLabel;
   Label5: TLabel;
   Label6: TLabel;
   Edit1: TEdit;
   Edit2: TEdit;
   Edit3: TEdit;
   Edit4: TEdit;
   Edit5: TEdit;
   Edit6: TEdit;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Edit1KeyPress(Sender: TObject; var Key: Char);
   procedure Edit2KeyPress(Sender: TObject; var Key: Char);
   procedure Edit3KeyPress(Sender: TObject; var Key: Char);
   procedure Edit4KeyPress(Sender: TObject; var Key: Char);
   procedure Edit5KeyPress(Sender: TObject; var Key: Char);
private
   { Private declarations }
public
   { Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c,d,e,f:boolean;
begin
a:=strtofloat(edit1.text);
c:=strtofloat(edit3.text);
if c=a then
begin
showmessage('숫자입력이 잘못됐습니다.')
end

else
begin
a:=strtofloat(edit1.text);
b:=strtofloat(edit2.text);
c:=strtofloat(edit3.text);
d:=strtofloat(edit4.text);
e:=strtofloat(edit5.text);
f:=(d-b)/(c-a)*e+b-(d-b)/(c-a)*a;
edit6.text:=floattostr(f);
end
end;


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in [ '0'..'9', #8] ) then
        Key := #0;

end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in [ '0'..'9', #8] ) then
        Key := #0;
end;

procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in [ '0'..'9', #8] ) then
        Key := #0;
end;



procedure TForm1.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in [ '0'..'9', #8] ) then
        Key := #0;
end;

procedure TForm1.Edit5KeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in [ '0'..'9', #8] ) then
        Key := #0;
end;

end.
1  COMMENTS
  • Profile
    cell 2004.07.15 22:43
    오류나는게 당연한거 아닌가요 ?
    먼저 edit1.text에 아무 값도 없는데 float로 바꾸려니 에러가 나고요.

    그다음  a,b,c,d,e,f:boolean; 로 선언했고
    a:=strtofloat(edit1.text);  boolean형에 float로 대입하려니 에러가 날테고요