델파이 초보 입니다.
이곳에 올라온 로그인 모달폼을 가지고 만들었습니다.
동작은 잘 되고 있지만 프로젝트 소스에서 Label.Caption에 찍는 것만 되고 있습니다.
직접 가져와서 작업을 좀 해야 되는대...왜그런지 알려 주셨으면 감사하겠습니다.
작업 환경은 xe2 study 입니다.
login.pas
class function Execute : boolean;
class function TLoginForm.Execute: boolean;
begin
with TLoginForm.Create(nil) do
try
Result := ShowModal = mrOk;
finally
Free;
end;
end;
프로젝트 소스
begin
with TLoginForm.Create(Application) do
begin
if ShowModal = mrOK then
begin
strID := Edtusername.Text;
strPW := Edtpassword.Text;
exdate := Expiration ;
Application.CreateForm(TMainForm, MainForm);
MainForm.Label4.Caption := strID;
MainForm.Label5.Caption := strPW;
MainForm.Label6.Caption := exdate;
Hide;
Free;
Application.Run;
end
end;
end.
main.pas
uses login은 추가 했습니다.
Label4.Caption :=LoginForm.Edtusername.Text;
access viaolation 오류 발생
LoginForm Public 변수로 선언해서 가져 올려구 해도 동일 오류 발생.
읽어 주셔서 감사합니다.
그렇게 쓰실려면 with TLoginForm.Create(Application) do로 하시면 안되고
LoginForm := TLoginForm.Create(Application);
with LoginForm do
로 하셔야죠...
var LoginForm: TLoginForm; <== 전역변수