Creative Commons License

Microsoft .NET

닷넷!시작하기
닷넷! Ver 2.0~
닷넷!스킬업
웹개발
윈폼개발
실용모듈개발
Tip & Tech
하루 한 문법

Microsoft .NET 개발자들을 위한 공간입니다. 기초강의에서 부터 고급 기술 정보 및 팁등을 다루도록 하겠습니다.

.

윈폼개발

닷넷을 기반으로 한 윈도우 응용프로그램 개발 지식을 다룹니다. 비지니스 응용프로그램을 위한 닷넷 윈폼 응용프로그램은 아주 강력합니다

[기본] 폼(Form) 의 시작위치

작성자 : 박종명
최초 작성일 : 2008-06-26 (목요일)
최종 수정일 : 2008-06-26 (목요일)
조회 수 : 3803

이번 포스트에서는 런타임 시 폼의 시작위치에 대해 간략히 설명하겠습니다 

폼 객체가 생성되고 Show ShowDialog 로 화면에 띄울 때 폼이 띄는 위치는 (아무런 설정을 하지 않았다면)
기본적으로 운영체제인 윈도우가 결정하게 됩니다

즉 윈도우에서 지정된 기본 위치에 폼이 나타나게 되는데, 이때 윈도우 운영체제가 여러개의 폼이 뜰 경우, 화면 좌측 상단을 출발점으로 하여 우측 하단 방향으로 배치시킵니다.

이때 각 폼들은 각각이 서로를 완전히 가려버리지 않도록 하며 폼이 화면 밖으로 나가지 않도록 윈도우가 시작위치를
잡아 줍니다

(Form) 클래스에서는 자신의 시작위치를 위해 StartPosition 이라는 속성을 제공합니다
이 속성은 FormStartPosition 열거형 값 중 하나를 가지게 되는데, 아래는 이 열거형 값의 설명입니다

기본값은 WindowsDefaultLocation 입니다. 즉 운영체제인 윈도우가 폼의 위치를 결정하게 됩니다
기본값 이외의 값을 설정했을 경우를 살펴 보겠습니다

1. WindowsDefaultBounds
이 값 역시 WindowsDefaultLocation 처럼 위치는 윈도우에 의해서 적당히 결정이 됩니다
, 한가지 차이점은 폼의 위치 뿐만 아니라 크기까지 윈도우가 개입해서 조절하게 됩니다
, WindowsDefaultLocation 은 폼의 위치만 윈도우가 결정하지 폼의 사이즈는 설정값대로 보여 주는 반면,
WindowsDefaultBounds 는 위치뿐만 아니라 폼의 사이즈마저도 현재 환경에 맞도록 조정해 버립니다

아래 그림은 WindowsDefaultBounds 로 설정되었을 때 VS 디자이너 화면에서의 폼 크기와 실행 시 폼 크기를 비교합니다

- 디자이너 화면에서의 폼 크기 -

 

- 실행 시 폼 크기 -
제 모니터가 큰 관계로 해상도가 아주 높습니다. 따라서 실행 시 폼이 완전 크게 나옵니다
게시판의 많은 부분을 차지해서 줄였습니다 

이 두 결과에서 보듯이 분명 Form 의 사이즈가 있음에도 불구하고 크기를 윈도우가 알아서 조정해 버립니다

 

2. Manaul
이 값은 운영체제인 윈도우는 전혀 개입 시키지 않게 합니다
, 프로그래머가 지정한 위치와 크기로 폼이 나타나게 됩니다
폼을 처음 생성해서 특별한 작업을 하지 않았다면 (0,0) 에 위치하게 됩니다

3. CenterScreen
이 속성이 빈번히 사용되는 속성 값입니다
폼을 현재 모니터 화면 중간에 위치 시킵니다
더 상세히 말해 현재 모니터 화면 중간이 아니라 하단의 작업표시줄 영역 등을 제외한 정중간을 의미합니다

4. CenterParent
이 속성 값은 폼을 어떻게 띄우느냐에 따라 조금 다른 결과를 볼 수 있습니다
만일 폼을 ShowDialog 로 띄운다면 새 폼은 소유자 폼의 위치를 기반으로 중앙에 위치하게 됩니다
Show 로 띄운다면 소유가가 지정되어 있을지라도 WindowsDefaultLocation 와 동일하게 폼을 띄우게 됩니다

이름
비밀번호
홈페이지
IX <- 왼쪽의 문자를 오른쪽 박스에 똑같이 입력해 주세요