안냐세욥..T_T;
폼이 세개 있습니당.. F1, F2, F3이렇게요.
F1이 메인폼이고, F2는 F1에서 동적생성한 모달리스폼입니당.
F1위에는 트리컨트롤하나가 올려져 있고요..
F2는 F1에서 동적생성한 것입니다. 그런데 이 F2가 제대로
Free가 되질 않는것 같습니다.. OnClose에서 Action=caFree;
를 지정해도 계속 발생합니당.. 문제의 코드는 아래와 같습니당..
F2보기 핸들러에서, 이미 한번 만들어졌다면, 포커스만 주기위해
한것인데, SetFocus에서 계속 에러가 납니당. -_-;
//////////////////////////////////////////////////////
if FAddForm = nil then begin
FAddForm := TAddForm.Create(self);
TRY
FAddForm.Left := 0;
FAddForm.Top := 0;
FAddForm.Show;
EXCEPT
MessageDlg('Create Failed!', mtError, [mbOk], 0);
Exit;
END;
end
else begin
FAddForm.SetFocus; <-- 바로 요기에서 에러가 납니당..
end;
//////////////////////////////////////////////////////////
그러니깐. 처음 생성한후 제거는 되었다가. 다시 이 핸들러가 콜되면
FAddForm 이 nil이 되질 않습니당.. 그러니깐 Free 가 제대로 되질
않았다는 뜻이겠지요? -_-; 하지만, 폼은 눈앞에서 사라졌습니당..
어딘가 잘못된것 같은데,, 고수님들 부탁드립니당..
FAddForm의 OnClose이벤트에
FAddForm:= nil;
를 추가해 보세요.
델초 wrote:
> 안냐세욥..T_T;
> 폼이 세개 있습니당.. F1, F2, F3이렇게요.
> F1이 메인폼이고, F2는 F1에서 동적생성한 모달리스폼입니당.
> F1위에는 트리컨트롤하나가 올려져 있고요..
> F2는 F1에서 동적생성한 것입니다. 그런데 이 F2가 제대로
> Free가 되질 않는것 같습니다.. OnClose에서 Action=caFree;
> 를 지정해도 계속 발생합니당.. 문제의 코드는 아래와 같습니당..
> F2보기 핸들러에서, 이미 한번 만들어졌다면, 포커스만 주기위해
> 한것인데, SetFocus에서 계속 에러가 납니당. -_-;
> //////////////////////////////////////////////////////
> if FAddForm = nil then begin
> FAddForm := TAddForm.Create(self);
> TRY
> FAddForm.Left := 0;
> FAddForm.Top := 0;
> FAddForm.Show;
> EXCEPT
> MessageDlg('Create Failed!', mtError, [mbOk], 0);
> Exit;
> END;
> end
> else begin
> FAddForm.SetFocus; <-- 바로 요기에서 에러가 납니당..
> end;
> //////////////////////////////////////////////////////////
> 그러니깐. 처음 생성한후 제거는 되었다가. 다시 이 핸들러가 콜되면
> FAddForm 이 nil이 되질 않습니당.. 그러니깐 Free 가 제대로 되질
> 않았다는 뜻이겠지요? -_-; 하지만, 폼은 눈앞에서 사라졌습니당..
> 어딘가 잘못된것 같은데,, 고수님들 부탁드립니당..
>