티스토리 뷰
슬라이더 컨트롤(Slider Control)
   1. 대화상자에 슬라이더을 붙이자.
   2. 슬라이더 컨트롤의 컨트롤 변수 추가
      CSliderCtrl         m_ctrSlider;
   3. 슬라이더 컨트롤 설정
      // 사용영역 값 설정한다.
m_ctrSlider.SetRange(0, 100);
m_ctrSlider.SetRange(0, 100);
// 최소 값 설정.
m_ctrSlider.SetRangeMin(0);
// 최대 값을 설정.
m_ctrSlider.SetRangeMax(100);
      // 위치 설정.
m_ctrSlider.SetPos(50);
m_ctrSlider.SetPos(50);
      // 눈금 간격을 설정한다.
// 속성의 Tick Marks와 Auto Ticks가 True로 되어 있어야 한다.
m_ctrSlider.SetTicFreq(10);
// 속성의 Tick Marks와 Auto Ticks가 True로 되어 있어야 한다.
m_ctrSlider.SetTicFreq(10);
// 키보드 커서키로 슬라이더를 움직일때의 증가 크기를 설정
m_ctrSlider.SetLineSize(1);
// 키보드의 PgUp, PgDn키를 누르거나 마우스로 슬라이더의 몸동을 클릭시 움직일 크기
m_ctrSlider.SetPageSize(10);
      // 슬라이더의 특정 영역 선택.
// 속성의 Enable Selection Range가 True로 되어 있어야 한다.
m_ctrSlider.SetSelection(30, 70);
// 속성의 Enable Selection Range가 True로 되어 있어야 한다.
m_ctrSlider.SetSelection(30, 70);
      // 선택영역 지운기.
m_ctrSlider.ClearSel();
m_ctrSlider.ClearSel();
   4. 슬라이더가 이동 되었을때.
      - 슬라이더 컨트롤의 이벤트 NM_RELEASEDCAPTURE를 사용한다.
      - 마우스로 슬라이더의 이동이 끝난 후 발생한다.
         int nPos = m_ctrSlider.GetPos();   // 현재 슬라이더의 위치를 알아낸다.
   5. 슬라이더가 움직일때 마다 값을 알고자 한다면.
      - 대화상자의 메시지 WM_HSCROOL를 사용한다. 세로 슬라이더라면 WM_VSCROOL을 사용한다.
         void CDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다.
{
// TODO: 여기에 메시지 처리기 코드를 추가 및/또는 기본값을 호출합니다.
            if(pScrollBar)
            {
               // 어떤 슬라이더인지 검사
               if(pScrollBar == (CScrollBar*)&m_ctrSlider)
               {
                  // 슬라이더의 위치를 검사한다.
                  int nPos = m_ctrSlider.GetPos();
               }
            }
            else
            {
               // CScrollView를 상속받은 뷰의 경우 프래임의 스크롤롤 동작시 pScrollBar이 NULL된다.
            }
'Development > Windows' 카테고리의 다른 글
| [API/MFC] 레지스트리 읽고 쓰는 함수 (1) | 2011.06.02 | 
|---|---|
| [Visual C++] MultiByteToWideChar와 WidecharToMultiByte의 사용. (0) | 2011.05.12 | 
| [Visual C++] shift_jis 인코딩 문제 (0) | 2011.05.11 | 
| [MFC] ScrollBar 사용하기 (4) | 2011.02.18 | 
| [MFC] #define new DEBUG_NEW와 static char THIS_FILE[] = __FILE__; (0) | 2011.02.11 | 
| [MFC] MESSAGE MAP (0) | 2010.12.14 | 
| [MFC] Error: The Extender Provider failed to return an Extender for this object (0) | 2010.12.08 | 
| [MFC] 브레이크 포인트가 저절로 해제될 경우 (0) | 2010.12.07 | 
					댓글
						
					
					
					
				
			
										공지사항
										
								
							
								
								
									최근에 올라온 글
									
							
								
								
									최근에 달린 댓글
									
							
								
								- Total
- Today
- Yesterday
									TAG
									
							
								
								- jni강좌
- C
- winapi
- 안드로이드
- java
- 음악
- Troubleshooting
- source
- jni
- driver
- db
- android
- 드라이버
- database
- MFC
- Cloud
- NDK
- API
- linux
- Visual C++
- kering
- Quiz
- algorithm
- Python
- 프로그래밍
- C++
- it
- gcc
- AWS
- 리눅스
| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
									글 보관함