C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[69900] Re:MouseDown , OnClick
장성호 [nasilso] 13241 읽음    2013-07-26 14:59
논리적으로 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에 진입하면 첫줄이 바뀌던데
: 포커스때문에 그러는것같은데 이 포커스 아예 없앨 방법이 있나요?
:
: 그럼 답변달아주시면 감사하겠습니다 ㅠㅠ
:

+ -

관련 글 리스트
69899 MouseDown , OnClick 궁그미 9056 2013/07/26
69900     Re:MouseDown , OnClick 장성호 13241 2013/07/26
69902         Re:Re:Mouse Up하기도 전에 Click이벤트가 실행됩니다 ㅠㅠ 궁그미 3907 2013/07/26
69904             Re:Re:Re:Mouse Up하기도 전에 Click이벤트가 실행됩니다 ㅠㅠ 장성호 2411 2013/07/26
69906                 Re:Re:Re:Re:Mouse Up하기도 전에 Click이벤트가 실행됩니다 ㅠㅠ 궁그미 3838 2013/07/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.