2013-12-23 1 views
0

그림 상자가 양식의 다른 것과 교차하는지 확인할 수 있는지 궁금합니다. 나는 사각형의 알 :그림 상자를 다른 컨트롤과 교차 체크하는 프로그램을 만드는 방법?

if (rectangle.IntersectsWith(otherRectangle)) 

하지만 (나는 가능하지 알고있다) 나는 위와 같이하고 싶지 :

if (pictureBox1.IntersectsWith(pictureBox2)) 

누구나 확인할 수있는 좋은 방법을 알아? 또한, 그림 상자 1을 화살표 키로 움직이고 공간으로 점프 할 수있는 게임을 만들고 있습니다. 감사!

답변

0

, 당신은 자신의 Bounds을 받고 IntersectsWith를 호출하여 컨트롤이 중복 여부를 확인할 수 있습니다 :

if (pictureBox1.Bounds.IntersectsWith(pictureBox2.Bounds)) 

DisplayRectangle은 액세스 할 수없는 속성입니다. PictureBox의 경우 (0, 0, Width, Height)를 반환하므로 너비와 높이가 0이 아니면 IntersectsWith은 항상 true를 반환합니다.

1

이 경우, 그림 상자는 같은 부모 내에있는 두 개의 컨트롤이 같은 폼 또는 컨테이너의 아이 인 경우

pictureBox1.DisplayRectangle.IntersectsWith(pictureBox2.DisplayRectangle) 
관련 문제