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

델파이 Q&A
Delphi Programming Q&A
[14047] Re:DLL에 포함된 Form에서 MouseEnter, MouseLeave 등이 발생하지 않아요.
장성호 [nasilso] 2051 읽음    2012-01-11 15:05
RunTime Package를 쓰세요

Dll 및 Exe를 Compile할때 Project-Option 에서 Run-time Package를 쓰도록 설정해서 Compile해보세요
그러면 vclxx.bpl , rtlxx.bpl 등을 exe와 함께 따로 배포해 줘야 하지만
위와같은 문제는 해결될 것입니다.

기억이 가물가물 한데...
CM_MOUSEENTER , CM_MOUSELEAVE는 대게 
Application이 Idle상태일때 (메세지큐에 처리할 메세지가 없을때)
Mouse아래의 Control이 변화하는지 체크해서 인위적으로 CM_MOUSEENTER , CM_MOUSELEAVE 메세지를 던져줍니다.(항상그런것은 아님,vcl 버젼에 따라 틀리기도 하고)

runtime-package를 쓰지 않고
dll에서 만들어진 Form은 
exe에 있는 Global객체인 Application과 Screen객체에서 정확히 판단을 할수가 없습니다.
(TForm은 생성될때 Screen.Forms에 자신을 등록하고 , free될때 Screen.Forms에서 remove함)

....


그럼....



레드수샤 님이 쓰신 글 :
: 안녕하세요.
:
: 초초초보입니다;;;
:
: 아래와 같은 문제로 1주일째 뜬눈으로 밤을 지새웁니다 ㅠ_ㅠ
:
: -------------
: DLL에 포함된 Form을 생성하고 화면에 출력하면,
:
: 그 화면에 포함된 Edit 에서 CM_MOUSELEAVE, CM_MOUSEENTER 등이 발생하지 않습니다.
:
: 물론 같은 Edit 를 별도의 application에 넣고 실행하면,  CM_MOUSELEAVE, CM_MOUSEENTER 이 잘 발생합니다.
: -------------
:
: 이거 어떻게 해야하나요? ㅠ_ㅠ

+ -

관련 글 리스트
14045 DLL에 포함된 Form에서 MouseEnter, MouseLeave 등이 발생하지 않아요. 레드수샤 1726 2012/01/11
14047     Re:DLL에 포함된 Form에서 MouseEnter, MouseLeave 등이 발생하지 않아요. 장성호 2051 2012/01/11
14048         Re:Re:DLL에 포함된 Form에서 MouseEnter, MouseLeave 등이 발생하지 않아요. civilian 1733 2012/01/11
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.