콘텐츠로 건너뛰기
Home » 메인 폼에서 서브 폼을 표시하는 방법과 종류 (modal, modeless)

메인 폼에서 서브 폼을 표시하는 방법과 종류 (modal, modeless)

  • by
메인 폼에서 서브 폼을 표시하는 방법과 종류 (modal, modeless)

여기서 우리는 메인 폼에서 서브 폼을 표시하는 방법을 소개 하겠습니다.
새로운 프로젝트 생성 -> 윈도우 폼 (vb.net , C#)을 생성해주세요.

폼 표시 방법에는 두 가지 유형이 있습니다. modal(모달), modeless(모달리스) 입니다.

모달 폼 

모달 방식으로 폼을 오픈하게 되면, 오픈된 폼 이외에 권한이 없으므로 접근이 불가능합니다.

모달리스 폼

모달리스 방식으로 폼을 오픈하게 되면, 모든 폼의 접근의 가능합니다.

다음 예제는 Form2를 모달 폼으로 오픈 할때의 예입니다.

VB.NET

'Form2 인스턴스
Dim f As New Form2()
'Form2 표시
'모달폼으로 열기
'모달폼 소유자를 Me 설정
f.ShowDialog(Me)
'창이 닫히면, 객체파기
f.Dispose()

C#

//Form2 인스턴스
Form2 f = new Form2();
//Form2 표시
//모달폼으로 열기
//모달폼 소유자를 Me 설정
f.ShowDialog(this);
//창이 닫히면, 객체파기
f.Dispose();

다음 예제는 Form2를 모달리스 폼으로 오픈할때의 예입니다.

VB.NET

'Form2 인스턴스
Dim f As New Form2()
'Form2를 표시
'모달리스 폼으로 열기
f.Show()

C#

//Form2 인스턴스
Form2 f = new Form2();
//Form2를 표시
//모달리스 폼으로 열기
f.Show();

ShowDialog(모달 폼)으로 오픈할 경우에는 Dispose를 호출하여 리소스를 해제하시길 바랍니다.
Show(모달리스 폼)으로 오픈할 경우에는 그럴 필요가 없습니다.

모달 폼은 닫힐 때까지 f.ShowDialog() 메서드 이후의 코드가 실행되지 않습니다. 
그러나 모달리스 폼은 f.Show() 메서드에 이후의 코드가 실행됩니다.

댓글 남기기