SetScrollPos

¿øÇü int SetScrollPos( HWND hWnd, int nBar, int nPos, BOOL bRedraw );
Àμö

¢ºhWnd : ½ºÅ©·Ñ ¹Ù ÄÁÆ®·ÑÀÇ ÇÚµé. ÀÌ °ªÀÇ Àǹ̴ µÎ¹ø° Àμö nBar¿¡ µû¶ó ´Þ¶óÁø´Ù.

¢ºnBar : À§Ä¡¸¦ ¼³Á¤ÇÒ ½ºÅ©·Ñ ¹Ù¸¦ ÁöÁ¤ÇÑ´Ù. ´ÙÀ½ ¼¼°¡Áö °ªÁßÀÇ Çϳª¸¦ °¡Áø´Ù.

°ª ¼³¸í
SB_CTL º°µµÀÇ ½ºÅ©·Ñ ¹Ù ÄÁÆ®·ÑÀ̸ç hWnd´Â ½ºÅ©·Ñ ¹Ù ÄÁÆ®·ÑÀÇ ÇÚµéÀ» ³ªÅ¸³½´Ù.
SB_HORZ Ç¥ÁØ ¼öÆò ½ºÅ©·Ñ ¹ÙÀ̸ç hWnd´Â ½ºÅ©·Ñ ¹Ù¸¦ °¡Áø À©µµ¿ìÀÇ ÇÚµéÀÌ´Ù.
SB_VERT Ç¥ÁØ ¼öÁ÷ ½ºÅ©·Ñ ¹ÙÀ̸ç hWnd´Â ½ºÅ©·Ñ ¹Ù¸¦ °¡Áø À©µµ¿ìÀÇ ÇÚµéÀÌ´Ù.

¢ºnPos : ½ºÅ©·Ñ ¹ÙÀ§ »õ·Î¿î À§Ä¡¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ À§Ä¡´Â ¹Ýµå½Ã ½ºÅ©·Ñ ¹ÙÀ§ ¹üÀ§³»¿¡ ÀÖ¾î¾ß ÇϹǷΠ°ªÀ» º¯°æÇÒ ¶§ ¹üÀ§ ³»ºÎÀÎÁö¸¦ Á¡°ËÇÑ ÈÄ °ªÀ» º¯°æÇØ¾ß ÇÑ´Ù.

¢ºbRedraw : À§Ä¡¸¦ º¯°æÇÑ ÈÄ ½ºÅ©·Ñ ¹Ù¸¦ ´Ù½Ã ±×¸± °ÍÀÎÁö¸¦ ÁöÁ¤ÇÑ´Ù. ½ÇÇàÁß¿¡ À§Ä¡¸¦ º¯°æÇÒ °æ¿ì ÀÌ °ªÀ» TRUE·Î ÁöÁ¤ÇÏ¿© ½æÀ» ´Ù½Ã ±×¸®µµ·Ï ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ±×·¯³ª ÃÖÃÊ ½ºÅ©·Ñ ¹Ù ÃʱâÈ­½Ã¿¡´Â ´Ù½Ã ±×¸± ÇÊ¿ä°¡ ¾øÀ¸¸ç ¶ÇÇÑ ½ÇÇàÁß¿¡¶óµµ ½ºÅ©·Ñ ¹ÙÀ§ ¹üÀ§¿Í À§Ä¡¸¦ µ¿½Ã¿¡ º¯°æÇÒ ¶§´Â µÑ Áß ÇÑ ÇÔ¼ö¿¡¼­¸¸ ´Ù½Ã ±×¸®±â¸¦ ÁöÁ¤ÇÏ¸é µÈ´Ù. ÀÌ °æ¿ì Åë»ó SetScrollRange¿¡¼­¸¸ bRedraw¸¦ TRUE·Î ¼³Á¤Çϸç SetScrollPosÀÇ bRedraw´Â FALSE·Î ÁöÁ¤ÇÑ´Ù.

¸®ÅÏ ¼º°øÇϸé ÀÌÀü¿¡ ¼³Á¤µÇ¾î ÀÖ´ø ½ºÅ©·Ñ ¹Ù À§Ä¡¸¦ ¸®ÅÏÇÏ¸ç ¿¡·¯ ¹ß»ý½Ã 0À» ¸®ÅÏÇÑ´Ù.
¼³¸í

½ºÅ©·Ñ ¹ÙÀ§ ÇöÀç À§Ä¡, Áï ½ºÅ©·Ñ ¹ÙÀÇ °ªÀ» ¼³Á¤ÇÑ´Ù. Åë»ó ÀÌ ÇÔ¼ö´Â WM_HSCROLL, WM_VSCROLL µîÀÇ ½ºÅ©·Ñ ¹Ù ¸Þ½ÃÁö ó¸® ·çƾ¿¡¼­ ½ºÅ©·Ñ ¹ÙÀÇ À§Ä¡°ªÀ» º¯°æÇϱâ À§ÇØ È£ÃâÇÑ´Ù. ¹üÀ§¸¦ ÁöÁ¤ÇÏ´Â nPos´Â 32ºñÆ®ÀÇ Á¤¼öÀ̳ª ¸Þ½ÃÁö·Î Àü´ÞµÇ´Â ½ºÅ©·Ñ ¹Ù À§Ä¡´Â 16ºñÆ®°ªÀ̱⠶§¹®¿¡ À§Ä¡°ªÀº 16ºñÆ®·Î Á¦ÇѵȴÙ. ±×·¯³ª ¸Þ½ÃÁöÀÇ Àμö¸¦ ÂüÁ¶ÇÏÁö ¾Ê°í GetScrollInfo µîÀÇ ÇÔ¼ö·Î ½ºÅ©·Ñ ¹ÙÀÇ À§Ä¡¸¦ Á÷Á¢ Á¶»çÇϸé 32ºñÆ®ÀÇ ½ºÅ©·Ñ À§Ä¡°ªÀ» ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù.

ÀÌ ÇÔ¼ö¿¡ ´ëÇÑ ¿¹Á¦´Â SetScrollRange ÇÔ¼öÀÇ ¿¹Á¦¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ´ÙÀ½ ÄÚµå´Â ½ºÅ©·Ñ ¹ÙÀ§ ¹üÀ§¸¦ 0~255·Î ¼³Á¤ÇÏ°í Ãʱâ À§Ä¡¸¦ 192·Î ¼³Á¤ÇÑ °ÍÀÌ´Ù.

SetScrollRange(hScroll,SB_CTL,0,255,FALSE);
SetScrollPos(hScroll,SB_CTL,192,FALSE);

 

Âü°íÇÔ¼ö

GetScrollPos : ½ºÅ©·Ñ ¹ÙÀ§ ÇöÀç À§Ä¡°ªÀ» ¾ò´Â´Ù.

SetScrollRange, SetScrollInfo, GetScrollInfo

Ç÷¿Æû95ÀÌ»ó
º»¹®ÂüÁ¶ 

written by http://www.winapi.co.kr