login register Sysop! about ME  

2022년 01월 18일 18시 32분 00초,     조회수 : 375
  제목 : WinForm 사용도중 궁금증이 생겨서 질문드립니다.
SEQ : 34822 글쓴이 : sycha1994

작성 포맷 : TEXT 모드, 자동 줄바꿈 사용

안녕하세요 고수님들...

제가 Winform창을 최대화를 할 때 작업표시줄이 있고 없고를 생각해서
유동적으로 최대화시 창 크기를 변경을 하려고

//Form 이동시 작업공간 체크하여 Form크기 조절
        private void FrmMain_Move(object sender, EventArgs e)
        {
            Screen[] sc = Screen.AllScreens;
            int current = 0;
            for(int i = 0; i < sc.Length; i++)
            {
                if (sc[i].WorkingArea.Contains(this.Location))
                {
                    current = i;
                }
            }
            Rectangle rectangle = new Rectangle();
            rectangle.Width = sc[current].WorkingArea.Width - 1;
            rectangle.Height = sc[current].WorkingArea.Height;
            this.MaximizedBounds = rectangle;
        } 

이러한 코드를 추가해서 창을 듀얼모니터환경에서
어느 모니터든 화면에 딱 맞는 최대화 크기를 만들었습니다..

그런데 최대화 버튼을 눌러서 최대화를 시킬땐 정상적으로 화면이 최대화가 되는데

창을 모니터 최상단에 쭉 올려 붙여서 최대화를 시키는 행위로 최대화를 시키면
정상적으로MaximizedBounds를 처리를 못하고 작업표시줄을 침범해서 화면이 커지게 됩니다..

이러한 문제를 어떻게 해결해야 할지 너무 궁금해서 찾아 뵙게 되었습니다.

고수님들의 조언 부탁드립니다...

  wind1379
  2022-01-19(11:37)
캐릭 이미지
this.MaximizedBounds = rectangle;
// 창 크기 최대화 처리로 아래 코드를 추가해 보세요...
this.WindowState = FormWindowState.Maximized;

...[Mr.NET!]



제목 작성자 날짜 조회
WinForm 사용도중 궁금증이 생겨서 질문드립니다. (1) sycha1994 2022-01-18 375

 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})