2017-04-20 19 views
1

마우스를 클릭하면 상자 안의 마우스 위치 값을 가져와야하는 그림 상자가 있습니다.다른 방법으로 MouseEventArgs를 사용하려면 어떻게해야합니까?

public void pictureBox1_MouseClick(object sender, MouseEventArgs e) 
    { 

     int CurX; 
     int CurY; 
     CurX = e.X; 
     CurY = e.Y; 
    } 
이 지금 그림 상자의 네 모서리 즉 그림 상자의 상대적 위치에 그들을 변환이 값 CurX과 CurY를 사용할 필요가

이 가진 GPS 위도와 긴 너무 좌표 :이 사용하여이 코드를 수행 할 수 있습니다 대략적인 Lat 및 Long은 그림 상자에서 마우스 이벤트 클릭의 위치로부터 계산할 수 있습니다.

계산 된 값은 대략 다른 위도 및 경도 값을 기반으로 배열에서 선택된 값과 다른 방법으로 배열에 대해 검사됩니다.

이 CurX 및 CurY 값을 pictureBox1_MouseClick에서 다른 방법으로 가져온 다음 다른 MouseClick 이벤트를 사용하여 프로세스를 반복 할 수 있습니까?

많은 감사 스티브

답변

2

사용 :

private int curX; 
private int curY; 

public void pictureBox1_MouseClick(object sender, MouseEventArgs e) 
{ 
    curX = e.X; 
    curY = e.Y; 
} 

는 그런 다음

2

전역 변수를 사용하십시오. 값을 할당하고 클래스의 어느 곳에서나 액세스하십시오.

+0

전역 변수는 거의 항상 나쁜 선택이 수업 시간에 다른 장소에서 curX에게 curY를 사용할 수 있습니다. 질문자가 왜 그 질문을 사용할 수 없는지 모르기 때문에 질문자에게 더 많은 정보가 필요합니다. 예를 들어 두 메소드가 같은 클래스에있을 때 전역 변수를 사용하지 않습니다. –

+1

나는 전역 변수가 나쁘다는 것을 알고 있지만 그들은 때때로 악 할 필요가있다. 너는 맞아, 더 많은 정보가 좋겠지 만이게 도움이 될거라고 생각 했어. – Kingsman

+0

또한 Winform GDI +에서 마우스 위치를 공유하는 유일한 방법은 전역 값이라고 생각합니다. –