Win 98, 델파이5 입니다.
메인폼을 그냥 일반 SDI폼으로 하구요
일반폼들도 SDI 폼입니다.
그래도 한화면 띄우고 다른 화면도 띄울수 있도록 Show로 보이고자 합니다.
Q&A를 참조하여 다음과 같이 했습니다.
procedure TMain.G1Click(Sender: TObject); //메인폼 메뉴 클릭
var Handle : THandle;
begin
//해당폼을 찾는다.
Handle := FindWindow(Pchar('TTr120F'), Pchar('견적서처리'));
if Handle = 0 then begin //해당폼이 없으면
Tr120F := TTr120F.Create(Self);
Tr120F.show;
end else
begin //해당폼이 있므면
Tr120F.show;
end;
end;
이렇게 하니 어떨때는 되고요 또 어떨때는 에러가 납니다.
무엇을 어찌 고쳐야 할까요?
아래와 같이 간단히 하는게 어떨지?
Uses
Tr120F;
if Tr120F = nil then
Tr120F := TTr120F .Create(self);
Tr120F.Show;