Q&A

  • 함수로 생성한 폼내의 컴포넌트를 사용하고 싶습니다.
<!--CodeS-->
<폼생성 함수>
procedure Tfm_menu.CREATEform(Frm: TForm; Frm_Str: String);
var
  t_ck: String  ;
  i   : SmallInt;
begin
  t_ck := 'N';
  for i := 0 to Screen.FormCount - 1 do
    if Screen.Forms[i].Name = Frm_str then
       t_ck := 'Y';

  if t_ck = 'N' then
     Frm := TFormClass(FindClass('T'+Frm_str)).Create(Self);
end;
<!--CodeE-->

이런식으로 폼을 생성하는 함수를 사용하려고 합니다.

<!--CodeS-->
CREATEform(form1, 'form1');        <-- 여기까지는 되는데,
form1.button1.Enabled := False;  <-- 여기서부터 에러가 떨어집니다.
<!--CodeE-->

즉, 함수로 생성된 폼의 컴포넌트를 사용하려고 하면 access violation이 발생합니다.
뭐가 잘못된거죠??
1  COMMENTS