Invalidate 메서드를 이해하지 못했다고 생각합니다 ... mousedown에서 마우스의 위치에 사각형의 왼쪽 위 모서리가있는 사각형을 그리고 나서 오른쪽 아래 모서리가 마우스의 현재 위치. 다음은 MouseMove 이벤트에서 트리거되는 메서드입니다. 부모는 pictureBox 자식이있는 패널입니다. (나는 이것들을 위에 그리려하고있다.)C# 그래픽 무효화
문제는 pictureBoxMain.Invalidate()
인 것 같다. 주석을 달았을 때 코드는 예상대로 동작하고 거대한 사각형을 그립니다. 나는 무효화 라인을 주석을 해제하면
[I가있는 PictureBox에 무효화 메소드를 호출 따라서 이유에 PictureBox에 의해 생성 g
그래픽은.]
다음 상자를 마우스 이동으로하지만, 같은 무승부 곧 상자가 움직이는 것을 멈추고 사라집니다. 나는 왜 내 인생에 대해 운동 할 수 없습니다. 코드를 디버깅하려고 할 때 마우스가 움직이지 않을 때 MouseMove 메서드가 호출되는 것처럼 보입니다. 아무런 의미가 없습니다.
도움을 주시면 대단히 감사하겠습니다.
예제가 도움이 될 것입니다. OP가 윈도우 페인트 방법에 대해 배우기를 원하고, OnPaint()에 대한 예제 오버라이드를 보여주고 싶습니다. – IAbstract