2011-10-10 2 views
1

마우스 포인터가 버튼이나 다른 컨트롤을 가리키고 있는지 어떻게 확인할 수 있습니까? 마우스를 움직이거나 버튼을 움직일 때 특정 작업을 수행하고 싶습니다.컨트롤이 버튼인지 확인하는 방법은 무엇입니까?

개별 버튼에 이벤트를 설정할 수 있다는 것을 알고 있습니다. 하지만 가리키는/가리 키기 컨트롤이 버튼인지 확인하는 것이 가능하지 않습니까?

+1

WinForms를 참조하고 있습니까? –

답변

1

는 말인지 잘 모르겠어요 : 나는 개별 컨트롤에 MouseHover에 대한 이벤트 처리기없이이 작업을 수행 할 수 있습니다. 그렇다면 대답은 '아니오'입니다.

하지만 각 Contol의 MouseHover 이벤트는 Chris의 대답과 비슷한 하나의 이벤트 처리기에만 첨부 할 수 있습니다. 편의상 폼의로드 이벤트에서 컨트롤을 반복하여 프로그래밍 방식으로 수행 할 수도 있습니다. (winforms라고 가정)

+0

알았습니다. 감사. –

8

당신이 필요로하는 정보를 가지고 있어야 이벤트 방법에 보낸 인수 ...

private void MyEventHandler(object sender, EventArgs args) { 
    if(sender is Button) { 
     //Do some stuff 
    } 
} 
+0

좀 더 설명 해주시겠습니까? 감사. –

+0

내가 뭘 찾고 있는지 모르겠다. 이 코드는 기본적으로 "이벤트 소스가 System.Windows.Forms.Button의 인스턴스 인 경우 무언가를 수행하십시오."라고 말합니다. 마우스가 특정 컨트롤 (예 : 단추) 위에있을 때를 알기 원하면 관심있는 컨트롤 (단추)에 대해 MouseEnter, MouseHover 또는 MouseMove 이벤트를 수신 할 수 있습니다. –

관련 문제