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
[47485] 조이스틱값을 c++builder 에서 읽어내려면 어떤식으로 해야하나요?
금목암 [iconms1] 1945 읽음    2006-12-20 10:02
조이스틱 값을 읽어보려고하는데

vc++에서는 directx를 사용하여
m_XAxis.Format("%d,joy->lx); //조이스틱 x축값
이런식으로 읽거나

하느리님이 아래와 같이 하라고 써있는데 c++builder6에서 에러가 나고
폼에 조이스틱 이벤트가 없네요

c++빌더에서 usb-joystick 을 사용하려면 어떤식으로 해야 하는지
자세히 좀 알려주시기 바랍니다 ,

MM_JOY1BUTTONUP 등을 어디서 선언해야하나요?
라이브러리 이름이나 다이렉트x에서 불러오는 방법 좀 알려주세요 api나

---------- 아 래 -----------------------------------------------
조이스틱도 마우스와 동일하다고 보시면 됩니다.
다만 마우스가 WM_LBUTTONDOWN, WM_MOVE 등의 이벤트를 발생시키는 것에 반하여 조이스틱은 MM_JOY1BUTTONUP, MM_JOY1MOVE 등의 이벤트를 발생시킵니다. 도움말을 참조해 보시면 아시겠지만, 무수히 만흥 이벤트가 준비되어 있습니다. MFC 형태의 Windows API 도움말을 참조하세요.
아래는 하나의 예입니다. 제가 옛날에 만들었던 것에서 뽑아서 올립니다.

폼 h 헤더파일 내...
class TForm1 : public TForm
{
private:    // Start of User declarations
    bool    __fastcall JoyConnect (void);
    void    __fastcall JoyButton (TMessage &msg);
    void    __fastcall JoyMove (TMessage &msg);
    ...

public:        // Start of User declarations
    // 폼에 메세지를 추가한다.
  BEGIN_MESSAGE_MAP
     MESSAGE_HANDLER (MM_JOY1BUTTONUP, TMessage, JoyButton)
     MESSAGE_HANDLER (MM_JOY1MOVE, TMessage, JoyMove)
  END_MESSAGE_MAP (TForm)
}
폼의 cpp 소스파일 내...
//---------------------------------------------------------------------------
// Joystick 조정함수 : start ------------------------------------------------
//---------------------------------------------------------------------------
bool __fastcall TForm1::JoyConnect (void)
{ // 조이스틱 연결여부 확인
    JOYINFOEX   JoyInfo;

    if ( joyGetNumDevs () )
    {
        joyGetPosEx (JOYSTICKID1, &JoyInfo);
        if ( joyGetPosEx (JOYSTICKID1, &JoyInfo) == JOYERR_NOERROR )
        {
            joySetCapture (Handle, mJoyID, 55, FALSE);
            return  true;
        }
    }

    return  false;
}
//---------------------------------------------------------------------------
// 죠이스틱 버튼이 눌려졌을때 사용되는 함수
void    __fastcall TForm1::JoyButton (TMessage &msg)
{

+ -

관련 글 리스트
47485 조이스틱값을 c++builder 에서 읽어내려면 어떤식으로 해야하나요? 금목암 1945 2006/12/20
62655     혹시 조이스틱 값을 읽어내는 방법에 대해서 알아내셨나요? PMAC 2043 2010/10/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.