Q&A

  • 여러개의 버튼중 아무거라도 눌렸을때 이벤트...
안녕하세요 오늘도 질문을 또 올리네요 ^^;

화면에 툴바와 기타 버튼들이 있고 가운데 PageControl 이 있습니다.

그런데 페이지 컨트롤 외부에 있는 툴바와 버튼들중 아무거라도 눌렸으면 어떤 작업을 하려고 하는데요

각 버튼의 OnClick 이벤트에 모두 걸어주는건 너무 비효율적이고 해서 다른 좋은 방법이 없을까요?

WndProc 이라던지...기타 방법이요

※ 그리고 혹시 OnKeyDown 에서 Virtual Key code 중에 키보드의 엔터키(넓은거)와 오른쪽 키패드쪽의 엔터키(세로로 긴거)를 구분할 방법 있을까요? 둘다 VK_RETURN 이던데...포토샵은 텍스트 툴에서 두가지가 구분돼서 키보드 엔터키는 개행(줄바꿈)이고 키패드 엔터는 텍스트 적용이던데요

고수님들의 답변 부탁드립니다.
2  COMMENTS
  • Profile
    최용일 2005.10.17 21:13
    안녕하세요. 최용일입니다.

    OnClick이벤트에 모두 걸어준다(?)는 것이 비효울적이라는데... 제 생각엔 WinProc을 이용하든 Event를 이용하든 뭘 해도 별 차이는 없을것 같네요... 이벤트를 이용하는게 가장 직관적이고 효율적인 방법이라고 생각합니다.

    혹시나해서... 똑같은 동작을 하는 버튼이 100개가 있으면 100개의 이벤트를 모두 만들어야 된다고 생각하셔서 비효율적이라고 하시는것같은데... 이벤트는 단 하나만 있으면 됩니다. 100개의 버튼의 이벤트를 만들어둔 하나의 이벤트로 연결만 하시면 굳이 100개를 만들필요가 없습니다.

    두개의 엔터키를 구분하실려면... 윈도우에서 들어오는 키코드가 가상키코드로 바뀌기 전인 폼의 WinProc을 override하셔서 작업하셔야 될것같네요... 해보진 않아서...

    ^^ 항상 즐코하세요...

  • Profile
    서정길 2005.10.17 23:02
    최용일님 답변 고맙습니다~

    각각 이벤트에 모두 걸어주는걸 안 하려는게 각 버튼마다 다 OnClick 이벤트에서 처리하는 작업들이 이미 있거든요 그래서 그 OnClick 이벤트를 들어가기 전에 어디 한군데서 전체 버튼의 이벤트를 처리할수있지 않을까 해서 질문한거구요
    많은 도움 되었습니다~

    행복하세요.