VB.NET 2008/VB - 폼(Form)

Windows Forms - 폼의 위치, 크기, 모달 또는 모달리스

본클라쓰 2011. 4. 10. 09:34

 

Windows Form의 좌표계는 장치 좌표를 기반으로 하며 Windows Forms에서 그릴 때 기본 측정 단위는 장치 단위(일반적으로 픽셀)입니다. 화면의 점은 오른쪽으로 이동하면 증가하는 X좌표와 위에서 아래로 이동하면 증가하는 Y좌표를 사용하여 X와 Y좌표 쌍으로 표시된다.

 

Windows Forms 응용 프로그램은 화면 좌표를 사용하여 화면에서 창의 위치를 지정한다. 화면 좌표의 경우 원점은 화면의 왼쪽 위 모퉁이에 있다. 창의 왼쪽 위 모퉁이와 오른쪽 아래 모퉁이를 정의하는 두 점의 화면 좌표를 포함하는 Rectangle 구조를 사용하여 창의 전체 위치를 설명하기도 한다.

 

Windows Froms 응용 프로그램은 클라이언트 좌표를 사용하여 폼 또는 컨트롤에서 점의 위치를 지정한다. 클라이언트 좌표의 원점은 컨트롤 또는 폼의 클라이언트 영역 왼쪽 위 모퉁이이다. 클라이언트 좌표를 사용하면 폼이나 컨트롤에서 그리는 동안 화면에서 폼이나 컨트롤의 위치에 관계없이 응용 프로그램이 항상 같은 좌표 값을 사용할 수 있다.

 

영역에 대한 클라이언트 좌표를 포함하는 Rectangle 구조를 사용하여 클라이언트 영역의 차원을 설명할 수도 있다. 어떠한 경우에도 사각형의 왼쪽 위 좌표는 클라이언트 영역에 포함되고 오른쪽 아래 좌표는 제외된다. 그래픽 작업은 클라이언트 영역의 오른족 아래 가장자리를 포함하지 않는다. 예를 들어, FillRectangle 메서드는 지정한 사각형의 오른쪽 아래 가장자리를 채우지만 이러한 가장자리를 포함하지 않는다.

 

 

 

폼이나 대화 상자는 모달 또는 모덜리스로 표시할 수 있다. 모달 폼 또는 대화 상자의 경우 먼저 모달 폼 또는 대화 상자를 닫거나 숨겨야만 응용 프로그램을 계속 사용할 수 있다.

 

중요한 메시지를 표시하는 대화 상자는 항상 모달로 나타내야 한다. 모달 대화 상자의 예를 들면 Visual Studio의 정보 대화 상자가 있으며, MessageBox는 사용할 수 모달 폼의 한 예이다.

 

모덜리스 폼의 경우 최초의 폼을 닫지 않아도 해당 폼과 다른 폼 사이에 포커스를 옮길 수 있다. 즉, 모덜리스 폼이 표시되어 있어도 다른 응용 프로그램에서 계속 작업할 수 있다.

 

모덜리스 폼은 사용자가 순서에 관계없이 액세스할 수 있기 때문에 프로그래밍하기가 더욱 어렵다. 사용자의 동작에 관계없이 응용 프로그램의 상태를 일관성 있게 유지해야 한다.

 

 

폼을 모달 대화 상자로 표시하려면

 

Dim frmAbout As New Form()

' Display frmAbout as a modal dialog

frmAbout.ShowDialog()

 

ShowDialog 메서드는 owner라는 선택적 인수를 사용하며 이 인수는 폼의 부모-자식 관계를 지정하는 데 사용된다. 예를 들어, 기본 폼에서 대화 상자를 표시하는 코드를 작성하는 경우 다음과 같이 대화 상자의 소유자로 Me 또는 this를 전달하여 기본 폼을 소유자로 설정할 수 있다.

 

Dim f As New Form()

f.ShowDialog(Me)

 

 

폼을 모덜리스 대화 상자로 표시하려면 show 메서드를 호출한다.

 

Dim f As New Form()

' Display f as a modeless dialog.

f.Show()

 

 

 

여러 가지 방법으로 Windows form의 크기를 지정할 수 있다. Size 속성에 새 값을 설정하여 프로그래밍 방식으로 폼의 높이와 너비를 모두 변경하거나 Height 또는 Width 속성을 개별적으로 조정할 수 있다.

 

런타임에 폼의 크기를 정의하려면 폼의 Size 속성을 설정한다.

 

Form1.Size = New System.Drawing.Size(100, 100)

 

 

Size를 정의한 후 Width 또는 Height 속성을 사용하여 폼의 높이 또는 너비를 변경할 수 있다.

 

Form1.Width = 300

Form.Height = 300

 

 

Size 속성을 설정하여 Width 또는 Height를 변경할 수 있다. 아래 예제는 Width 속성의 값을 변경하는 예제이다.

 

Form1.Size = New Size(300, Form1.Size.Height)

 

 

'VB.NET 2008 > VB - 폼(Form)' 카테고리의 다른 글

Windows Forms - 이벤트  (0) 2011.04.10
Windows Forms - 모양 변경  (0) 2011.04.10
Windows Forms - 자동 배율 조정  (0) 2011.04.10
Windows Forms - 기본 속성과 메서드  (0) 2011.04.10
Windows Forms - 개요  (0) 2011.04.10