³ª.½Ã½ºÅÛÀÇ Áö¿ø

¿î¿µÃ¼Á¦ÀÇ ´ÙÁß ¸ð´ÏÅÍ Áö¿ø Á¤Ã¥Àº ¾ÆÁÖ Àß ÀÛ¼ºµÇ¾î ÀÖ´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ Æ¯º°È÷ ´ÙÁß ¸ð´ÏÅÍ È¯°æÀ» °í·ÁÇÏÁö ¾Ê´õ¶óµµ ´ëºÎºÐÀÇ °æ¿ì¿¡ ÀÖ¾î µ¿ÀÛÇϴµ¥ Å« ¹«¸®°¡ ¾ø±â ¶§¹®¿¡ ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ßÀÚ´Â ´ÙÁß ¸ð´ÏÅÍ È¯°æ¿¡ ´ëÇØ Å©°Ô ½Å°æ¾µ Çʿ䰡 ¾ø´Ù. ½Ã½ºÅÛÀÇ ´ÙÁß ¸ð´ÏÅÍ Áö¿øÀÌ ¾î¶² ½ÄÀÎÁö »ìÆì º¸µµ·Ï ÇÏÀÚ.

À©µµ¿ì³ª ¾ÆÀÌÄÜ µîÀÇ °³Ã¼´Â °¡»ó È­¸éÀÇ ¾î´À °÷À¸·Î³ª µå·¡±×ÇÒ ¼ö ÀÖ´Ù. ÀÌÂÊ ¸ð´ÏÅÍ¿¡¼­ µå·¡±×ÇÏ¿© ÀúÂÊ ¸ð´ÏÅÍ·Î ¿Å±â±â¸¸ ÇÏ¸é µÈ´Ù. À©µµ¿ìÀÇ °æ¿ì µÎ ¸ð´ÏÅÍÀÇ °æ°è¿¡ °ÉÃÄ ÀÖÀ» ¼öµµ Àִµ¥ ÀÌ·¸°Ô ÇÏ´õ¶óµµ DC°¡ °¢ ¸ð´ÏÅÍÀÇ Æ¯¼ºµéÀ» °í·ÁÇÏ¿© ±×¸®±â¸¦ Çϱ⠶§¹®¿¡ ³»¿ë Ãâ·Â¿¡´Â ¾Æ¹« ¹®Á¦°¡ ¾ø°í ¼º´É»óÀÇ ºÒÀÌÀ͵µ °ÅÀÇ ¾ø´Â ÆíÀÌ´Ù. ÀÀ¿ë ÇÁ·Î±×·¥Àº ¸ð´ÏÅÍ¿¡ Á÷Á¢ Ãâ·ÂÀ» º¸³»´Â °ÍÀÌ ¾Æ´Ï¶ó DC¶ó´Â Ç¥¸é¿¡ Ãâ·ÂÀ» º¸³»±â ¶§¹®¿¡ ±âÁ¸ÀÇ ±×¸®±â ÄÚµå´Â ±×´ë·Î ¾µ ¼ö ÀÖ´Ù.

¿ÀºêÁ§Æ®°¡ µÎ ¸ð´ÏÅÍÀÇ °æ°è¿¡ °ÉÃÄ ÀÖÀ» ¶§´Â ½Ã½ºÅÛÀÌ ¹Ì¸® Á¤ÇÑ ±ÔÄ¢¿¡ µû¶ó ¿ÀºêÁ§Æ®¸¦ ¹èÄ¡ÇÑ´Ù. °æ°è¿¡ °ÉÄ£ À©µµ¿ì¸¦ ÃÖ´ëÈ­ÇÒ ¶§´Â ¸¹ÀÌ °ÉÃÄ ÀÖ´Â ÂÊ ¸ð´ÏÅÍ·Î ÃÖ´ëÈ­µÇ¸ç ¸Þ½ÃÁö ¹Ú½º³ª ´ëÈ­»óÀÚ´Â ºÎ¸ð À©µµ¿ì°¡ ÀÖ´Â ÂÊ¿¡ ¿­¸°´Ù. ¸Þ´ºµµ À©µµ¿ì¿Í ¸¶Âù°¡Áö·Î ¸¹ÀÌ °ÉÄ£ ÂÊ¿¡ ¿­¸®¸ç ÆË¾÷ ¸Þ´º´Â ¿À¸¥ÂÊ ¹öưÀ» ´©¸¥ ÁöÁ¡¿¡ ¿­¸°´Ù. ¹Ù·Î °¡±â¸¦ ´õºíŬ¸¯ÇÏ¿© ÇÁ·Î±×·¥À» ½ÇÇàÇÒ ¶§´Â ¹Ù·Î°¡±â ¾ÆÀÌÄÜÀÌ ÀÖ´Â ¸ð´ÏÅÍ¿¡¼­ ½ÇÇàµÈ´Ù.

º¸´Ù½ÃÇÇ ¿î¿µÃ¼Á¦ÀÇ ´ÙÁß ¸ð´ÏÅÍ Áö¿ø Á¤Ã¥Àº Áö±ØÈ÷ »ó½ÄÀûÀ̱⠶§¹®¿¡ »ç¿ëÀÚ ÀÔÀå¿¡¼­³ª °³¹ßÀÚ ÀÔÀå¿¡¼­³ª Ưº°È÷ ÁÖÀÇÇÒ¸¸ÇÑ »çÇ×Àº ¾ø´Â ¼ÀÀÌ´Ù. ´Ù¸¸ Çϵå¿þ¾îÀûÀÎ ÇѰ迡 ÀÇÇØ VGA ȣȯ Àåºñ´Â Çϳª¸¸ °¡´ÉÇÏ´Ù´Â ÇѰèÁ¡ÀÌ ÀÖ´Ù. VGA´Â ¹°¸®ÀûÀÎ Àý´ë ÁÖ¼Ò °ø°£À» ¿ä±¸Çϱ⠶§¹®¿¡ µÎ °³ÀÇ ¸ð´ÏÅͰ¡ µ¿½Ã¿¡ VGA ȣȯ ¸ðµå·Î µ¿ÀÛÇÒ ¼ö´Â ¾ø´Ù.

½Ã½ºÅÛÀÌ ´ÙÁß ¸ð´ÏÅÍ È¯°æÀ» ´Ü¼øÇÑ µ¥½ºÅ©Å¾ÀÇ È®ÀåÀ¸·Î ´Ù·ê ¼ö ÀÖµµ·Ï ÇØ Áֱ⠶§¹®¿¡ API ÇÔ¼öµéµµ °ÅÀÇ º¯°æ¾øÀÌ ±×´ë·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´Ù¸¸ ½Ã½ºÅÛÀÇ Á¤º¸¸¦ Á¶»çÇÏ´Â ¸î°¡Áö ÇÔ¼öÀÇ Ç÷¡±×µé¿¡ ¾à°£¾¿ÀÇ º¯È­°¡ ÀÖ°í ´ÙÁß ¸ð´ÏÅÍ Áö¿øÀ» À§ÇÑ ÇÔ¼öµéÀÌ Ãß°¡µÇ¾ú´Ù´Â Á¡ Á¤µµ¸¸ ´Ù¸£´Ù.

½Ã½ºÅÛ ¸ÞÆ®¸¯½º Á¤º¸¸¦ Á¶»çÇÏ´Â GetSystemMetrics ÇÔ¼öÀÇ °æ¿ì ¸ðµç ¸ÞÆ®¸¯½º°ªµéÀº ȣȯ¼º À¯Áö¸¦ À§ÇØ Ç×»ó ÁÖ ¸ð´ÏÅ͸¦ ±âÁØÀ¸·Î ÇÑ´Ù. Ä¿¼­ÀÇ Å©±â, ¾ÆÀÌÄÜÀÇ Å©±â, ÀÎÄ¡´ç Çȼ¿ ¼ö µîÀº ¾î´À ¸ð´ÏÅ͸¦ ±âÁØÀ¸·Î Çϳª µ¿ÀÏÇÒ ¼ö ¹Û¿¡ ¾ø´Ù. È­¸é Å©±â¸¦ Á¶»çÇÏ´Â SM_CXSCREEN, SM_CYSCREEN ¸ÞÆ®¸¯½º´Â Ç×»ó ÁÖ ¸ð´ÏÅÍÀÇ Å©±â¸¸ Á¶»çÇØ ÁØ´Ù. ÀÌ °ªµéÀÌ °¡»ó È­¸éÀÇ Å©±â¸¦ Á¶»çÇϵµ·Ï º¯°æµÇ¾î ¹ö¸°´Ù¸é ´ÙÁß ¸ð´ÏÅ͸¦ ÀνÄÇÏÁö ¸øÇÏ´Â ÇÁ·Î±×·¥µé°úÀÇ È£È¯¼ºÀÌ »ç¶óÁö±â ¶§¹®ÀÌ´Ù.

À¯ÀÏÇÏ°Ô ´Þ¶óÁö´Â ¸ÞÆ®¸¯½º´Â SM_CXMAXTRACK, SM_CYMAXTRACK»ÓÀε¥ ÀÌ °ªµéÀº Ç×»ó °¡»ó È­¸éÀ» ±âÁØÀ¸·Î ÇÑ´Ù. µû¶ó¼­ ´ÙÁß ¸ð´ÏÅÍ È¯°æ¿¡¼­ À©µµ¿ìÀÇ °æ°è¸¦ µå·¡±×ÇØ¼­ Á¶Á¤ÇÒ ¼ö ÀÖ´Â ÃÖ´ë Å©±â´Â °¡»ó È­¸éÀ¸·Î ÀÚ¿¬½º·´°Ô È®ÀåµÈ´Ù. ÀÌ ¸ÞÆ®¸¯½º°¡ °¡»ó È­¸éÀÇ Á¤º¸¸¦ Á¶»çÇØ Áֱ⠶§¹®¿¡ ´ÙÁß ¸ð´ÏÅ͸¦ Áö¿øÇÏÁö ¾Ê´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ¶óµµ ÁÖ ¸ð´ÏÅͺ¸´Ù ´õ Å« Å©±â·Î ¸¸µé ¼ö ÀÖ´Â °ÍÀÌ´Ù. ´ÙÀ½Àº °¡»ó ¸ð´ÏÅÍ Áö¿øÀ» À§ÇØ Ãß°¡µÈ ¸ÞÆ®¸¯½ºµéÀÌ´Ù.

 

°ª

¼³¸í

SM_CMONITORS

½Ã½ºÅÛ¿¡ ÀåÂøµÈ ¸ð´ÏÅÍ °³¼ö¸¦ Á¶»çÇÑ´Ù. 95/NT¿¡¼­´Â 0À¸·Î Á¶»çµÈ´Ù.

SM_SAMEDISPLAYFORMAT

¸ðµç ¸ð´ÏÅ͵éÀÇ »ö»ó Æ÷¸ËÀÌ °°ÀºÁö Á¶»çÇÑ´Ù

SM_XVIRTUALSCREEN

SM_XVIRTUALSCREEN

°¡»ó È­¸éÀÇ Á»ó´Ü ÁÂÇ¥ÀÌ´Ù. ÁÖ¸ð´ÏÅÍÀÇ ¿ÞÂÊÀ̳ª À§ÂÊ¿¡ Ãß°¡ ¸ð´ÏÅͰ¡ ÀÖÀ¸¸é À½¼ö°ªÀ» °¡Áú ¼öµµ ÀÖ´Ù.

SM_CXVIRTUALSCREEN

SM_CXVIRTUALSCREEN

°¡»ó È­¸éÀÇ Æø°ú ³ôÀÌ´Ù.

 

À©µµ¿ì¿Í ÀÛ¾÷¿µ¿ª Å©±â¸¦ ±¸ÇÏ´Â GetWindowRect, GetClientRect ÇÔ¼öµµ ȣȯ¼º À¯Áö¸¦ À§ÇØ Ç×»ó ÁÖ ¸ð´ÏÅ͸¦ ±âÁØÀ¸·Î µ¿ÀÛÇÑ´Ù. GetWindowRect(hWnd, &rc) È£Ãâ¿¡ ÀÇÇØ Á¶»çµÇ´Â rc´Â ÁÖ ¸ð´ÏÅÍÀÇ ¿øÁ¡¿¡¼­ ¾ó¸¶¸¸Å­ ¶³¾îÁ® Àִ°¡¸¦ ³ªÅ¸³»¸ç ÀÌ À©µµ¿ì°¡ ÁÖ ¸ð´ÏÅÍÀÇ ¿ÞÂÊ ¸ð´ÏÅÍ¿¡ ÀÖ´Ù¸é À½¼ö ÁÂÇ¥¸¦ °¡Áú ¼öµµ ÀÖ´Ù.

´ÙÁß ¸ð´ÏÅÍ È¯°æ¿¡ µû¸¥ API ÇÔ¼öÀÇ º¯È­µµ °ÅÀÇ ¾ø´Â ¼ÀÀ̱⠶§¹®¿¡ ÀÀ¿ë ÇÁ·Î±×·¥ °³¹ßÀÚµéÀº °ú°Å¿¡ ÇÏ´ø ¹æ½Ä´ë·Î Å« º¯È­¾øÀÌ Äڵ带 ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ ´ÙÀ½°ú °°Àº »çÇ׿¡ ´ëÇØ¼­´Â °í·Á¸¦ ÇØ¾ß ÇÑ´Ù.

 

1.À½¼ö ÁÂÇ¥ÀÇ Á¸Àç °¡´É¼º ÀÎ½Ä : °ú°Å ƯÁ¤ À©µµ¿ì¸¦ Àá½Ã ¼û±â°í ½Í´Ù°Å³ª ¶Ç´Â ½ÃÀÛÁß¿¡ À©µµ¿ì »ý¼º ¸ð½ÀÀ» º¸ÀÌÁö ¾Ê±â À§ÇØ À½¼ö ÁÂÇ¥³ª ¾ÆÁÖ Å« ÁÂÇ¥·Î À©µµ¿ì¸¦ Àá½Ã À̵¿½ÃŰ´Â ±â¹ýÀ» Á¾Á¾ »ç¿ëÇϰï Çߴµ¥ ÀÌÁ¦ ÀÌ·± ±â¹ýµéÀÌ ´õ ÀÌ»ó ÅëÇÏÁö ¾Ê´Â´Ù. À½¼ö ÁÂÇ¥°¡ ½ÇÁ¦ Á¸ÀçÇϱ⠶§¹®¿¡ ÀÌ·± ±â¹ýÀ» ¼²ºÒ¸® »ç¿ëÇÏ´Ù°¡´Â ¿ÞÂÊ ¸ð´ÏÅÍ·Î À©µµ¿ì°¡ Àá½Ã À̵¿ÇÏ´Â ²Ã»ç³ª¿î Çö»óÀ» »ç¿ëÀÚ°¡ ¸ñ°ÝÇÒ ¼öµµ ÀÖ´Ù.

2.ÀúÀåÇÑ ÁÂÇ¥ÀÇ À¯È¿¼ºÀ» Á¡°ËÇÏ´Â ¹æ¹ý º¯È­ : ¸ð´ÏÅͰ¡ Çϳª»ÓÀÏ ¶§´Â GetSystemMetrics ÇÔ¼ö·Î Á¶»çÇÑ SM_CX(Y)SCREEN ÁÂÇ¥ ¹ÛÀº ¸ðµÎ ¹«È¿ÇÑ ÁÂÇ¥¿´´Ù. ÃÖÈÄ ½ÇÇà À§Ä¡¸¦ ·¹Áö½ºÆ®¸®¿¡ ÀúÀåÇÑ ÈÄ ´Ù½Ã ½ÇÇàÇÒ ¶§ ÀÌ À§Ä¡¸¦ º¹±¸ÇÏ´Â ±â¹ýÀº ¾ÆÁÖ ÀϹÝÀûÀε¥ ÇØ»óµµ°¡ º¯È­µÇ¸é ÀúÀåµÈ ÁÂÇ¥°¡ ¹«È¿ÇØÁú ¼ö ÀÖ´Ù. ÀÌ·² °æ¿ì ¾Æ¿¹ À©µµ¿ì°¡ º¸ÀÌÁö ¾Ê±â ¶§¹®¿¡ ´Ù½Ã È­¸é ¾ÈÂÊÀ¸·Î ³Ö¾î ÁÖ¾ú´Âµ¥ ÀÌÁ¦ºÎÅÍ´Â ´ÙÁß ¸ð´ÏÅÍ È¯°æÀ» °í·ÁÇÏ¿© ÁÖ ¸ð´ÏÅÍÀÇ ÁÂÇ¥°¡ ¾Æ´Ï´õ¶óµµ ¿À¸¥ÂÊ ¸ð´ÏÅÍÀÇ ÁÂÇ¥ÀÎÁöµµ °°ÀÌ Á¡°ËÇØ º¸¾Æ¾ß ÇÑ´Ù.

3.´ÙÁß ¸ð´ÏÅ͸¦ ±¸¼ºÇÏ´Â °¢ ¸ð´ÏÅÍ´Â ÇØ»óµµ¿Í »ö»ó Æ÷¸ËÀ» ÀÚÀ¯·Ó°Ô º¯°æÇÒ ¼ö ÀÖ´Ù. µÎ ¸ð´ÏÅÍÀÇ »ö»ó Æ÷¸ËÀÌ ´Ù¸¦ °æ¿ì ±×¸®±â¸¦ ÇÏ´Â ¹æ½ÄÀÌ ¸ð´ÏÅͺ°·Î ´Þ¶óÁö±â ¶§¹®¿¡ °æ°è¿¡ °ÉÃÆÀ» ¶§ ±×¸®±â ¼º´ÉÀÌ ´Ù¼Ò ÀúÇϵǴ °æÇâÀÌ ÀÖ´Ù. ÀÌ·² ¶§´Â ½Ã½ºÅÛÀÇ Áö¿øÀ» ¹ÞÁö ¸»°í Á÷Á¢ ±×¸®±â ·çƾÀ» ÃÖÀûÈ­ÇØ¾ß ÇÑ´Ù.