<!--CodeS-->
{라이브러리}
procedure ShowStatAnesth(App: TApplication; Parent: TWinControl);
begin
Application := App;
FmStatAnesth := TFmStatAnesth.Create(App);
FmStatAnesth.BorderStyle := bsNone;
FmStatAnesth.Align := alClient;
FmStatAnesth.Parent := Parent;
FmStatAnesth.Show;
end;
<!--CodeE-->
<!--CodeS-->
{폼 생성}
procedure TDmMenu.N1Click(Sender: TObject);
begin
ShowStatAnesth(Application,FmMain);
end;
<!--CodeE-->
위와 같이 생성을 했습니다.
그런데, 중복실행을 방지하기 위해서 어떻게 해야할까요??
인터넷에 떠돌아 다니는건 거의 다 해봤는데, 안되거나 오류가 있더라구요.
그리고 폼 Close 시에..
<!--CodeS-->
procedure TFmStatAnesth.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := CaFree;
end;
<!--CodeE-->
맞게 한건가요??
{라이브러리}
procedure ShowStatAnesth(App: TApplication; Parent: TWinControl);
var i : integer;
begin
for i := 0 to Parent.ControlCount - 1 do
if uppercase(Parent.Controls[i].ClassName) = uppercase('TFmStatAnesth') then
exit;
Application := App;
FmStatAnesth := TFmStatAnesth.Create(App);
FmStatAnesth.BorderStyle := bsNone;
FmStatAnesth.Align := alClient;
FmStatAnesth.Parent := Parent;
FmStatAnesth.Show;
end;
<!--CodeE-->
이정도만 해도 되지 않을까요?