|
논리적으로 OnClick이 MouseDown보다 빨리 발생할수가 없습니다.
마우스 동작이 다음과 같은 순으로 일어나겠죠
Down->Move->Up
그럼 이벤트는
OnMouseDown
OnMouseMove ( 움직이지 않으면 발생하지 않음)
OnClick ( Mouse왼쪽버튼을 영역안에서 Up해야 발생함)
OnMouseUp
위에서 OnClick이벤트는
마우스 왼쪽버튼을 Up해야 발생합니다
단지 OnMouseUp이벤트보다 먼저 이벤트를 호출해 줍니다.
그리고 Control영역 안에서 MouseUp해야 OnClick이벤트가 발생하구요
-------------------------------------------------------------------------
결론적으로
OnClick이 OnMouseDown보다 먼저 발생한것이 아니라
OnMouseDown이후에 화면갱신이 늦어서, 늦게 발생한것처럼 보이는것이 아닌가 하는 생각이 듭니다.
그럼..
궁그미 님이 쓰신 글 :
: 안녕하세요!! 질문 올립니다.
:
: StringGrid에 MouseDown과 OnClick이벤트를 줬는데요
: MouseDown하면 선택한 Row의 색이 눈에띄게 바꾸는거고,
: OnClick하면 해당 Row의 정보를 Modal로 띄우는 겁니다.
:
: 엄청 짧고 작은 프로그램에서 돌릴땐 분명히 잘돌아갔는데
: 데이터가 크고 긴프로그램에서 하니까 Click이벤트 후에 Down이벤트가 일어납니다 ㅠㅠ
: 그러니까 색이 먼저 바뀌는게 아니고 창이먼저 뜬다음에 색이 바뀌어요 ㅠㅠ
:
: 이게 왜이러는걸까요??
:
: 아 그리고 Down이벤트 할때 색바뀌는게 맨처음에 StringGrid에 진입하면 첫줄이 바뀌던데
: 포커스때문에 그러는것같은데 이 포커스 아예 없앨 방법이 있나요?
:
: 그럼 답변달아주시면 감사하겠습니다 ㅠㅠ
:
|