초보임다 wrote:
> 현재 MDI 폼에서 작업중입니다.
>
> 1.프로그램을 실행시켰을때 메인폼이 뜨고 MDI CHILD폼이(로그인폼) 하나 뜹니다.
> 이 로그인폼에는 확인,취소 버튼과 RadioGroup이 있습니다.
> 라디오 그룹에서 하나를 선택한 후 확인 버튼을 누르면 로그인하고
> 취소버튼을 누르면 메인폼의 파일 메뉴의 로그인 글자만 활성화 되고 다른 기능은 모두 비활성화 시키고 싶습니다. 프로그램을 처음 실행시켰을때도 다른 기능은 모두 비활성화 시켰으면 합니다.
>
> 2.MDI CHILD 폼이 실행이 되면 다시 같은 폼이 실행 안되게 하는 방법을 알고 싶습니당. 같은 폼이 계속 열리네여....
>
>
>
> 혼자공부하고 있는 초보가 질문드립니다.---
//////////////////////////////////////////////////////////////////////////////
아래내용을 변형해서 사용해보세요
1.메인메뉴 비활성화시키기
for i := 0 to MainMenu1.Items.Count-1 do begin //부모의 개수 만큼
for j := 0 to MainMenu1.Items[i].Count-1 do begin //각각의 1째자식수
MainMenu1.Items[i].Items[j].Enabled := False;
end;
end;
원하는메뉴.Enabled := True;
2.폼애의 모든 컴포넌트 비활성화
var
i : integer;
ChildControl: TControl;
begin
for i := 0 to Form1.ControlCount-1 do begin
ChildControl := Form1.Controls[i];
ChildControl.Enabled := False;
end;
end;
3.MDI CHILD 폼 한번만 띄우기
자동생성을 하셨는지모르겠으나, 죽을때 폼Free를 잘하시면되요,게시판에 폼닫기등을 찾아보세요.
ShowModal사용하시면 간단하지만 MDI CHILD 폼니까
assigned(폼명)와 Visible로 떠있는지 확인후 show를 제어해보세요.