2011-04-23 6 views
3

내 노트북의 현재 해상도 인 1366x768 해상도에서 초보자 용 응용 프로그램을 만들었으므로 해상도에 신경을 쓰지 않습니다. 문제.해상도 독립 winform 만들기, C# winform의 해상도 설정, winform이 실행되는 화면 해상도 얻기

내가 그 응용 프로그램을 가져 와서 더 낮은 해상도의 PC에서 실행하면 모든 것이 엉망이되었습니다. 양식은 다른 곳으로 가고 있었고 대부분은 숨겨져있었습니다.

내 winform 해상도를 독립적으로 만드는 방법 또는 현재 화면 해상도를 얻는 방법을 알려주고 그에 맞게 변경되도록 내 winform에 설정하는 방법을 알려주십시오.

답변

4

속성

Screen.PrimaryScreen.WorkingArea 

폼 크기 및 위치 결정에 매우 유용하다. 예를 들어 코드 :

 this.Width = Screen.PrimaryScreen.WorkingArea.Width/2; 
     this.Height = Screen.PrimaryScreen.WorkingArea.Height/2; 
     this.Top = (Screen.PrimaryScreen.WorkingArea.Top + Screen.PrimaryScreen.WorkingArea.Height)/4; 
     this.Left = (Screen.PrimaryScreen.WorkingArea.Left + Screen.PrimaryScreen.WorkingArea.Width)/4; 

그것이 화면 크기를 중간에 실행되는 형태로 배치한다 (화면 클래스 System.Windows.Forms 네임 스페이스의 멤버 임) 화면 절반.

WorkingArea var는 화면 크기를 계산할 때 작업 표시 줄 및 기타 도킹 된 항목을 데스크탑에서 제외시키는 데 사용됩니다.

희망이 도움이됩니다.

+0

양식 "StartPosition"속성을 CenterScreen으로 설정하고 WindowsState를 최대화로 설정하여 똑같은 작업을 수행 할 수있는 경우이 코드를 추가하려는 이유는 무엇입니까? –

+0

@ScopeCreep, OP가 최대화 된 양식을 원했습니까? 내 코드는 화면의 일부만 차지하도록되어 있습니다. – Neowizard