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
[55442] Re:멀티미디어타이머...
김진호.불사새 [phenix96] 1744 읽음    2008-12-16 17:52
timeSetEvent를 찾아 보시면 잘 나와 있을꺼에요.

MMRESULT timeSetEvent(
  UINT uDelay,  //이때마다 타이머 뜨고(1ms~1000s까지 지정)
  UINT uResolution,  //이 단위의 정확도로(1ms~55ms까지 지정)
  LPTIMECALLBACK fptc, //타이머 뜨면 이 함수 불러 주고
  DWORD dwUser, //콜백 함수에 넣어줄 핸들
  UINT fuEvent //PERIODIC(주기)타이머냐, OneShop(한번)타이머냐 를 지정
);

콜백 원형은 이렇습니다.
typedef void (CALLBACK TIMECALLBACK)(UINT uTimerID, UINT uMsg, DWORD dwUser, DWORD dw1, DWORD dw2);

timeSetEent의 dwUser가 콜백함수의 dwUser로 들어가요.


fuEvent는 TIME_PERIODIC | TIME_CALLBACK_FUNCTION,  TIME_ONESHOT | TIME_CALLBACK_FUNCTION
정도가 있겠구요.

timeSetEvent의 return값은 생성된 timer의 ID입니다. Oneshop일 경우엔 필요 업고 periodic일 경우엔
나중에 타이머 다 쓰고 나면 해당 ID를 timeKillEvent 로 죽이시면 됩니다.


짜자잔 님이 쓰신 글 :
: 타이머를 써서 프로그래을 만들었는데
: 계속해서 오차가 생기네요..
: 멀티미디어 타이머를 사용하면 괜찮아 진다고 하는데..
: 어떻게 쓰는 건지..고수님들 부탁드려요...

+ -

관련 글 리스트
55440 멀티미디어타이머... 짜자잔 1133 2008/12/16
55442     Re:멀티미디어타이머... 김진호.불사새 1744 2008/12/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.