2012-01-05 4 views
0

크기 조정 중 컨트롤의 크기가 현재 조정되고 있는지 또는 최종 크기에 도달했는지 여부를 확인하는 방법을 찾고 있습니다. (C# Windows Forms)IsResizing 또는 이에 상응하는 C#

예 : 슬라이더가있는 Java에서 사용자가 현재 슬라이딩 중이거나 마우스를 놓은 상태인지 여부를 알 수 있습니다. 즉, 최종 값을 선택할 때까지 값 비싼 다시 그리기 또는 다른 계산을 피할 수 있습니다.

미리 감사드립니다.

+0

내가 원하는대로 질문을했는데 API가 최상위 수준 컨트롤 (경우에 따라 Forms라고도 함)에서만 이러한 이벤트를 발생시키는 것은 '웅대 한 사용자'의 잘못이 아닙니다. –

+0

Fred - 질문 한 질문에 최상위 레벨 컨트롤 (항상 WinForms에서 "폼"으로 알려져 있음) 만 간단히 말하면서 (그리고 여전히 말하지만) ... 컨트롤이 현재 크기가 조정되고 있는지 여부는 지정하지 않았습니다. "나는 당신의 질문이 매우 특정한 컨트롤, 특히 전체 프레임 워크의 기본 최상위 레벨 컨트롤만큼 일반적으로 이러한 이벤트를 얻으려는 의도 였을 때, 당신은 그렇게 말했을 것입니다. 질문을 수정 해 주시면 기꺼이 도와 드리겠습니다. – apiguy

답변

2

양식은 ResizeBegin, ResizeResizeEnd 이벤트가있어이

와 함께 당신을 도울 수있는 몇 가지 이벤트가 있습니다. 그 (것)들의 조합은 당신이 원하는 것을 얻는다.

기타 참고 사항 : 당신이 클릭하고 윈도우의 테두리를 드래그하면

는, 일련의 이벤트 마우스, ResizeEnd의 각 이동에 대한 크기 조정을 반복 ResizeBegin입니다. 창 크기를 최소화, 최대화 또는 복원하면 Resize가 각각에 대해 한 번 호출됩니다. ResizeBegin과 ResizeEnd 쌍은 윈도우 위치 속성을 프로그래밍 방식으로 설정할 때가 아니라 단순히 제목 막대를 사용하여 창을 이동하는데도 필요합니다.

+0

감사의 말, 완벽한 대답. 내 경우에는 MDI 폼을 가지고 있으므로 부모 폼의 크기가 조정될 때 ResizeBegin이 실행되지 않기 때문에 좀 더 복잡해집니다.하지만 그 문제를 해결할 수 있다고 생각합니다. –

관련 문제