
CScrollView Ŭ·¡½º´Â CView ½ºÅ©·Ñ ±â´É¡£
Ç¥ÁØ ½ºÅ©·Ñ ÀڽŠ¸Þ½ÃÁö ¸ÅÇÎµÈ OnHScroll ¹× OnVScroll ¸â¹ö ÇÔ¼ö¸¦ ÀçÁ¤ÀÇ ÇÏ ¿© CView ¿¡¼ ÆÄ»ý µÈ ¸ðµç Ŭ·¡½º¿¡¼ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. CScrollView CView ±â´É¿¡ ´ÙÀ½°ú °°Àº ±â´ÉÀ» Ãß°¡ ÇÏÁö¸¸:
¸¶¿ì½º ÈÙ ¸Þ½ÃÁö ¸ÅÇÎµÈ OnMouseWheel ¹× OnRegisteredMouseWheel ¸â¹ö ÇÔ¼ö¸¦ ÀçÁ¤ÀÇ ÇÏ ¿© ÀÚ½ÅÀ» ½ºÅ©·ÑÀ» ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¸â¹ö ÇÔ¼ö¿¡ ´ë ÇÑ ±ÇÀåµÈ Çൿ Áö¿ø CScrollViewÀ§ÇØ ±×µéÀº, WM_MOUSEWHEEL, ¹ÙÄû ȸÀü ¸Þ½ÃÁö¡£
ÀÚµ¿ ½ºÅ©·ÑÀ» ÀÌ¿ë ÇÏ·Á¸é CView¿¡¼ ´ë½Å CScrollView ¿¡¼ ºä Ŭ·¡½º¸¦ ÆÄ»ý ÇÕ´Ï´Ù. º¸±â¸¦ óÀ½ ¸¸µé¾îÁú ¶§, ¹®¼ÀÇ Å©±â¿¡ µû¶ó ½ºÅ©·ÑÇÒ ¼ö º¸±âÀÇ Å©±â¸¦ °è»ê ÇÏ·Á¸é CView::OnInitialUpdate ¶Ç´Â CView::OnUpdateÀÇ ÀçÁ¤ÀÇ¿¡¼ SetScrollSizes ¸â¹ö ÇÔ¼ö¸¦ È£Ãâ ÇÕ´Ï´Ù. (¹®¼ÀÇ Å©±â¸¦ Äõ¸® ÇÏ´Â Äڵ带 Á÷Á¢ ÀÛ¼º ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÂüÁ¶ º¸±â Çâ»ó Visual c + + ÀÚ½À¼¿¡¼.)
º¸±âÀÇ ¸ÅÇÎ ¸ðµå, ½ºÅ©·Ñ º¸±â ¹× °¡·Î ¹× ¼¼·Î·Î ½ºÅ©·ÑÇÏ·Á¸é ±Ý¾×ÀÇ ÃÑ Å©±â¸¦ ¼³Á¤ ÇÏ´Â SetScrollSizes ¸â¹ö ÇÔ¼ö¸¦ È£Ãâ ÇÕ´Ï´Ù. ¸ðµç Å©±â´Â ³í¸®Àû ´ÜÀ§ÀÔ´Ï´Ù. º¸±âÀÇ ³í¸®Àû Å©±â´Â ÀϹÝÀûÀ¸·Î ¹®¼¿¡ ÀúÀå µÈ µ¥ÀÌÅÍ ·ÎºÎÅÍ °è»ê ÇÏÁö¸¸ ¾î¶² °æ¿ì¿¡ ´ç½ÅÀÌ °íÁ¤ µÈ Å©±â¸¦ ÁöÁ¤ ÇÒ ¼ö ÀÖ½À´Ï´Ù. µÎ °¡Áö Á¢±Ù¹ýÀÇ ¿¹ ´ÙÀ½ À¥ »çÀÌÆ®¸¦ ÂüÁ¶ ÇϽʽÿÀ. CScrollView::SetScrollSizes¡£
³í¸® ´ÜÀ§¿¡¼ °¡·Î ¹× ¼¼·Î·Î ½ºÅ©·Ñ ¾çÀ» ÁöÁ¤ ÇÕ´Ï´Ù. ±âº»ÀûÀ¸·Î ¿ÜºÎÀÇ ½ºÅ©·Ñ »óÀÚ ½ºÅ©·Ñ ¸·´ë »þÇÁÆ®¸¦ Ŭ¸¯ÇÒ °æ¿ì CScrollView ½ºÅ©·Ñ "ÆäÀÌÁö." ½ºÅ©·Ñ ¸·´ëÀÇ ¾çÂÊ ³¡¿¡ ÀÖ´Â ½ºÅ©·Ñ È»ìÇ¥¸¦ Ŭ¸¯ ÇÏ´Â °æ¿ì CScrollView ½ºÅ©·Ñ "¼±." ÇÏ´Â ±âº»ÀûÀ¸·Î ÆäÀÌÁö´Â º¸±â; ÃÑ Å©±âÀÇ 1/10 ÇÑ ÆäÀÌÁö Å©±âÀÇ 1/10ÀÔ´Ï´Ù. »ç¿ëÀÚ Á¤ÀÇ Å©±â SetScrollSizes ¸â¹ö ÇÔ¼ö¿¡ Àü´Þ ÇÏ ¿©ÀÌ ±âº»°ªÀ» ÀçÁ¤ÀÇ ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù °¡·Î Å©±âÀÇ ÃÑ Å©±â¿Í ¼öÁ÷ Å©±â ÁÙÀÇ ³ôÀ̸¦ ³ÊºñÀÇ ÀϺΠºÐ¼ö¸¦ ÇöÀç ±Û²Ã¿¡¡£
½ºÅ©·Ñ ÇÏ´Â ´ë½Å CScrollView ¿¡ º¸±â ÇöÀç â Å©±â¸¦ ÀÚµ¿À¸·Î Á¶Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¸ðµå¿¡¼ º¸±â¿¡ ½ºÅ©·Ñ ¸·´ë°¡ ¾ø½À´Ï´Ù ¹× ³í¸® º¸±â ´Ã¾î³ª°Å³ª âÀÇ Å¬¶óÀÌ¾ðÆ® ¿µ¿ª¿¡ Á¤È®È÷ ¸Â°Ô Ãà¼Ò ÇÕ´Ï´Ù. ÀÌ ±Ô¸ð¿¡ ¸Â°Ô ±â´ÉÀ» »ç¿ë ÇÏ·Á¸é CScrollView::SetScaleToFitSize¸¦ È£Ãâ ÇÕ´Ï´Ù. ( SetScaleToFitSize ¶Ç´Â SetScrollSizes, ÇÏÁö¸¸ µÑ ´Ù¸¦ È£Ãâ ÇÕ´Ï´Ù.)
Àü¿¡ OnDraw ÆÄ»ýµÈ ºä Ŭ·¡½ºÀÇ ¸â¹ö ÇÔ¼ö¸¦ È£Ãâ, CScrollView ÀÚµ¿ Àü´Þ CPaintDC ÀåÄ¡ ÄÁÅØ½ºÆ® °³Ã¼¿¡ ´ë ÇÑ ºäÆ÷Æ® ¿øÁ¡ Á¶Á¤OnDraw¡£
CScrollView ½ºÅ©·Ñ âÀÇ ºäÆ÷Æ® ¿øÁ¡À» Á¶Á¤ ÇÏ·Á¸é CView::OnPrepareDC¸¦ ÀçÁ¤ÀÇ ÇÕ´Ï´Ù. ÀÌ Á¶Á¤Àº CScrollView Àü´Þ CPaintDC ÀåÄ¡ ÄÁÅØ½ºÆ®¿¡ ´ë ÇÑ ÀÚµ¿ OnDraw , ÇÏÁö¸¸ È£Ãâ ÇØ¾ß ÇÕ´Ï´Ù CScrollView::OnPrepareDC ÀڽŠCClientDC¿Í °°ÀÌ »ç¿ë ´Ù¸¥ ÀåÄ¡ ÄÁÅØ½ºÆ®¿¡ ´ë ÇÑ. CScrollView::OnPrepareDC Ææ, ¹è°æ »ö»ó ¹× ´Ù¸¥ ±×¸®±â Ư¼º ¼³Á¤ ÇÏÁö¸¸ ½ºÄÉÀϸµ ÇÒ ±âº» Ŭ·¡½º È£ÃâÀ» ¹«½ÃÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½°ú °°Àº °æ¿ì¿¡ Ç¥½Ã µÈ °Í°ú °°ÀÌ ½ºÅ©·Ñ ¸·´ë º¸±â¸¦ ±âÁØÀ¸·Î ¼¼ °÷¿¡ ³ªÅ¸³¯ ¼ö ÀÖ½À´Ï´Ù.:
CScrollView¸¦ »ç¿ë ÇÏ ¿© ÀÚ¼¼ÇÑ ³»¿ëÀº ÂüÁ¶ ¹®¼/ºä ¾ÆÅ°ÅØÃ³ ÁÖÁ¦ ¹× Visual c + + ÇÁ·Î±×·¡¸Ó °¡ÀÌµå ¿¡¼ ÆÄ»ý ºä Ŭ·¡½º¡£
# include lt;afxwin.h>
Ŭ·¡½º ¸â¹ö |nbsp; ±âº» Ŭ·¡½º (ko) | °èÃþ ±¸Á¶ Â÷Æ®(&N)
»ùÇÃnbsp; MFC »ùÇÃ DIBLOOK(&N)
Âü°í Ç׸ñnbsp;CView, CSplitterWnd(&N)