2007. 12. 26. 19:54
첨부된 소스파일은 Visual Studio 2005 (Service Pack 1) 에서 작성되었습니다.


실행화면...
사용자 삽입 이미지














Spin 컨트롤 예제 입니다.

1. MFC 응용프로그램 프로젝트 생성
2. 다이얼로그 기반으로 선택하고 마침 선택


컨트롤 ID 설정(기본값 사용)
IDC_EDIT1
IDC_SPIN1


헤더에 스핀의 값을 기억할 변수 선언(SpinExDlg.h)
사용자 삽입 이미지








변수값 초기화...(SpinExDlg.cpp)
사용자 삽입 이미지










이제 마지막으로... 아래의 코드 작성...
(스핀 컨트롤 더블클릭하면 아래 코드 작성하도록 나옵니다)
사용자 삽입 이미지





















캡쳐 하는데 spin_val-- 아랫줄에 커서도 같이 찍혔네요 -0-''

음... 이로써 끝났습니다.


스핀 컨트롤의 경우에도 스크롤바와 같이...

SetRange(int Min, int Max)
SetPos(int)
GetPos()
가 분명 존재 합니다...

하지만, 저것들을 사용해서 범위 지정하고, 위치값 얻어오는 과정에서 이상한 값이 출력되고 맙니다.
위치값 뿐만 아니라 버튼 위,아래의 오작동에 대한 증상도 같이 나타납니다.
(궁금하면 직접 해보시길...)

비주얼 스튜디오 6.0과 2005에서 동일 증상이 나타납니다.

따라서 여기 예제에서는 저런것들은 쓰지 않고, 단지 △, ▽가 눌린것을 체크하여서 임의의 변수에 값을 저장한 다음 그것을 출력하는 방식을 취하게 되었습니다.
Posted by 해비

댓글을 달아 주세요

  1. Hide_D 2008.12.13 21:13  댓글주소  수정/삭제  댓글쓰기

    SetRange를 제대로 설정해 주고
    ex .SetRange(0,100)
    시작하면 위,아래가 거꾸로 동작하는 현상이 발생하지 않습니다

  2. 해비 2008.12.25 03:04 신고  댓글주소  수정/삭제  댓글쓰기

    분명 SetRange() 값을 설정 해줬는데도 이상한 값이 나오더군요...
    위 님처럼 같이 설정 잡아 줬구요..

    조만간 다시 테스트 한번 해봐야 겠네요