창이 최대화 될 때 최대화되지 않은 창 위치 / 크기 얻기

그리고 W

사용자가 내 프로그램 창 (Winforms)의 위치를 ​​조정하고 크기를 조정하면 프로그램을 닫았다가 다시 연 후에도 동일한 위치에서 창을 볼 수 있기를 기대합니다. 내가하는 일은 폼의 Width, Height, Location.X 및 Location.Y 속성을 저장하고 프로그램이 다시 열릴 때 다시 설정하는 것입니다.

문제는 창이 최대화 될 때 너비, 높이, X, Y가 최대화되지 않은 너비 / 높이 / X / Y가 아니라 최대화 된 치수를 참조하는 것입니다.

따라서 사용자가 창을 최대화하고 프로그램을 닫았다가 다시 열고 원래 위치 / 크기로 돌아가는 대신 창 최대화를 해제하면 전체 크기 / 위치에 고정됩니다.

따라서 특정 이벤트가 실행 된 후 kludge를 사용하여 변수를 저장하지 않고 창이 최대화 될 때 어떻게 최대화되지 않은 위치와 크기를 얻을 수 있습니까?

그리고 W

이 문제를 해결하는 가장 좋은 방법은 RestoreBounds 구조를 사용하는 것입니다. 창이 최대화되면 RestoreBounds는 이전 (최대화되지 않은) 크기 및 위치를 참조합니다. 다음은 이러한 값을 찾는 코드입니다. 닫을 때이 값을 저장 한 다음 프로그램을 다시 열면 양식의 너비, 높이, 위치 .X 및 위치 .Y를 이러한 저장된 값으로 다시 설정할 수 있습니다.

bool b = WindowState == FormWindowState.Maximized;
int xpos = !b? Location.X : RestoreBounds.X;
int ypos = !b? Location.Y : RestoreBounds.Y;
int width = !b? Width : RestoreBounds.Width;
int height = !b? Height : RestoreBounds.Height;

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

창이 최대화 될 때 extjs 3.4 열이 완전히 확장되지 않음

분류에서Dev

화면 하단으로 크기가 조정될 때 창 자동 수직 최대화 비활성화

분류에서Dev

Tk 창 레이아웃, 최대화 할 위젯 크기

분류에서Dev

창이 최대화 될 때 제목 표시 줄에서 끌기를 비활성화하는 방법은 무엇입니까?

분류에서Dev

창이 전체 화면으로 변경 될 때 NSView의 크기가 조정되지 않습니다.

분류에서Dev

BorderPane은 창이 최대화 될 때까지 아래쪽 영역을 숨 깁니다.

분류에서Dev

WPF Borderless 창은 기본 화면 크기로만 최대화됩니다.

분류에서Dev

창 크기를 조정할 때 항목의 절대 위치가 올바르지 않은 동위 원소

분류에서Dev

최소화 / 최대화시 탭 페이지 크기가 조정되지 않음

분류에서Dev

대시-동적 레이아웃은 창 크기가 조정될 때까지 크기가 조정 된 그래프 차원을 전파하지 않습니다.

분류에서Dev

창 크기가 조정될 때 버튼 div를 정적 위치에 유지

분류에서Dev

창 / 스테이지가 축소 될 때 특정 컨테이너 / 구성 요소의 위치 및 크기가 제대로 설정되지 않는 이유는 무엇입니까?

분류에서Dev

그놈 셸에서 화면 가장자리로 드래그 할 때 창 크기 변경 (최대화)을 중지하는 방법은 무엇입니까?

분류에서Dev

창이 최대화되었을 때 와인 앱 제목 표시 줄을 숨기는 방법

분류에서Dev

브라우저 창 크기 조정은 새로 고침이 완료 될 때까지 jQuery 이벤트를 활성화하지 않습니다.

분류에서Dev

새 창이 열릴 때 기본 위치 및 창 크기?

분류에서Dev

창 닫기 / 최소화 / 최대화 없음, ctrl + alt + T 작동하지 않음, 대시 및 실행기 없음 시스템 파티션 크기 조정 후

분류에서Dev

MATE에서 최대화, 최소화 및 닫기를 위해 창 제목 표시 줄 아이콘을 이동하는 방법은 무엇입니까?

분류에서Dev

창 크기를 조정할 때 이미지 위치 수정

분류에서Dev

대화 상자 창이 추가 될 때 InDesign 스크립트가 작동하지 않음

분류에서Dev

사용자 지정 컨트롤은 창 크기가 조정될 때 크기가 조정되지 않습니다.

분류에서Dev

창을 이동 / 크기 조정하지 않고 창 상태를 최대화에서 복원으로 변경 하시겠습니까?

분류에서Dev

크기의 합이 최대화되도록 겹치지 않는 대부분의 요소를 선택합니다.

분류에서Dev

최상위 창 크기

분류에서Dev

Tkinter : 최대화 후 패딩을 제거하려면 어떻게합니까 (창의 크기에 맞게 두 프레임의 크기가 조정되는 위치)?

분류에서Dev

창을 최소화 할 때 래퍼 밖으로 나타나는 절대 위치 이미지

분류에서Dev

명령 줄에서 최대화 된 창 크기 조정

분류에서Dev

최대화되지 않은 Chromium에는 창 버튼이 없습니다.

분류에서Dev

최대화되지 않은 Chromium에는 창 버튼이 없습니다.

Related 관련 기사

  1. 1

    창이 최대화 될 때 extjs 3.4 열이 완전히 확장되지 않음

  2. 2

    화면 하단으로 크기가 조정될 때 창 자동 수직 최대화 비활성화

  3. 3

    Tk 창 레이아웃, 최대화 할 위젯 크기

  4. 4

    창이 최대화 될 때 제목 표시 줄에서 끌기를 비활성화하는 방법은 무엇입니까?

  5. 5

    창이 전체 화면으로 변경 될 때 NSView의 크기가 조정되지 않습니다.

  6. 6

    BorderPane은 창이 최대화 될 때까지 아래쪽 영역을 숨 깁니다.

  7. 7

    WPF Borderless 창은 기본 화면 크기로만 최대화됩니다.

  8. 8

    창 크기를 조정할 때 항목의 절대 위치가 올바르지 않은 동위 원소

  9. 9

    최소화 / 최대화시 탭 페이지 크기가 조정되지 않음

  10. 10

    대시-동적 레이아웃은 창 크기가 조정될 때까지 크기가 조정 된 그래프 차원을 전파하지 않습니다.

  11. 11

    창 크기가 조정될 때 버튼 div를 정적 위치에 유지

  12. 12

    창 / 스테이지가 축소 될 때 특정 컨테이너 / 구성 요소의 위치 및 크기가 제대로 설정되지 않는 이유는 무엇입니까?

  13. 13

    그놈 셸에서 화면 가장자리로 드래그 할 때 창 크기 변경 (최대화)을 중지하는 방법은 무엇입니까?

  14. 14

    창이 최대화되었을 때 와인 앱 제목 표시 줄을 숨기는 방법

  15. 15

    브라우저 창 크기 조정은 새로 고침이 완료 될 때까지 jQuery 이벤트를 활성화하지 않습니다.

  16. 16

    새 창이 열릴 때 기본 위치 및 창 크기?

  17. 17

    창 닫기 / 최소화 / 최대화 없음, ctrl + alt + T 작동하지 않음, 대시 및 실행기 없음 시스템 파티션 크기 조정 후

  18. 18

    MATE에서 최대화, 최소화 및 닫기를 위해 창 제목 표시 줄 아이콘을 이동하는 방법은 무엇입니까?

  19. 19

    창 크기를 조정할 때 이미지 위치 수정

  20. 20

    대화 상자 창이 추가 될 때 InDesign 스크립트가 작동하지 않음

  21. 21

    사용자 지정 컨트롤은 창 크기가 조정될 때 크기가 조정되지 않습니다.

  22. 22

    창을 이동 / 크기 조정하지 않고 창 상태를 최대화에서 복원으로 변경 하시겠습니까?

  23. 23

    크기의 합이 최대화되도록 겹치지 않는 대부분의 요소를 선택합니다.

  24. 24

    최상위 창 크기

  25. 25

    Tkinter : 최대화 후 패딩을 제거하려면 어떻게합니까 (창의 크기에 맞게 두 프레임의 크기가 조정되는 위치)?

  26. 26

    창을 최소화 할 때 래퍼 밖으로 나타나는 절대 위치 이미지

  27. 27

    명령 줄에서 최대화 된 창 크기 조정

  28. 28

    최대화되지 않은 Chromium에는 창 버튼이 없습니다.

  29. 29

    최대화되지 않은 Chromium에는 창 버튼이 없습니다.

뜨겁다태그

보관