| ¿øÇü |
int GetObject(HGDIOBJ hgdiobj, int cbBuffer, LPVOID lpvObject); | ||||||||||||||||
| MFC ¿øÇü |
int CGdiObject::GetObject( int nCount, LPVOID lpObject ) const; | ||||||||||||||||
| Àμö |
¢ºhgdiobj : Á¶»çÇϰíÀÚ ÇÏ´Â GDI ¿ÀºêÁ§Æ®ÀÇ ÇÚµé. ºñÆ®¸Ê, ºê·¯½Ã, ÆÒ, ÆùÆ® µîÀÇ ÇÚµéÀ» ÁØ´Ù. ¢ºcbBuffer : ¹öÆÛ¿¡ ±â·ÏÇÒ Á¤º¸ÀÇ Å©±â. sizeof(lpvObject)°ªÀ» ÁÖ¸é µÈ´Ù. ¢ºlpvObject : ¿ÀºêÁ§Æ®ÀÇ Á¤º¸¸¦ ¸®ÅϹÞÀ» ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. ÇÚµéÀÇ Å¸ÀÔ¿¡ µû¶ó »ç¿ëµÇ´Â ±¸Á¶Ã¼°¡ ´Þ¶óÁø´Ù. ÀÌ Àμö¸¦ NULL·Î ÁÖ¸é ÇÊ¿äÇÑ ¹öÆÛÀÇ Å©±â¸¦ ¸®ÅÏÇØ ÁØ´Ù.
|
||||||||||||||||
| ¸®ÅÏ |
Á¶»çµÈ Á¤º¸ÀÇ Å©±â¸¦ ¸®ÅÏÇØ ÁØ´Ù. lpvObjectÀμö°¡ NULLÀ̸é ÇÊ¿äÇÑ ¹öÆÛÀÇ Å©±â¸¦ ¸®ÅÏÇÏ¸ç ½ÇÆÐ½Ã 0À» ¸®ÅÏÇÑ´Ù. | ||||||||||||||||
| ¼³¸í |
GDI ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ Á¤º¸¸¦ ±¸ÇÑ´Ù. ¿ÀºêÁ§Æ® ŸÀÔ¿¡ µû¶ó ÀûÀýÇÑ ±¸Á¶Ã¼¸¦ ¼±¾ðÇÏ°í ±× ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅ͸¦ lpvObject Àμö·Î Àü´ÞÇØ ÁÖ¸é ±¸Á¶Ã¼¿¡ Á¶»çµÈ Á¤º¸¸¦ ä¿ö ÁØ´Ù. ÀÌ Á¤º¸µéÀº ÀϹÝÀûÀ¸·Î ¿ÀºêÁ§Æ®¸¦ »ý¼ºÇÒ ¶§ ÁöÁ¤ÇÑ Á¤º¸¿Í µ¿ÀÏÇÏ´Ù. »ý¼º Á¤º¸¸¦ °¡Áö°í ÀÖÁö ¾Ê°Å³ª ÀÓÀÇÀÇ ¿ÀºêÁ§Æ®¿¡ ´ëÇØ µ¿ÀÛÇÏ´Â ¹ü¿ëÀûÀÎ ÇÔ¼ö¸¦ ÀÛ¼ºÇÒ ¶§´Â ÀÌ ÇÔ¼ö·Î ¿ÀºêÁ§Æ®ÀÇ Á¤º¸¸¦ ½ÇÇàÁß¿¡ Á¶»çÇØ¾ß ÇÑ´Ù. ´ÙÀ½ ¿¹Á¦ÀÇ DrawBitmap ÇÔ¼ö´Â Àμö·Î Àü´ÞµÈ hBit ºñÆ®¸ÊÀ» ȸéÀ¸·Î Ãâ·ÂÇ쵂 ºñÆ®¸Ê Å©±â¸¸Å¸¸ Ãâ·ÂÇÑ´Ù.
void DrawBitmap(HDC hdc,int x,int y,HBITMAP hBit)
{
HDC MemDC;
HBITMAP OldBitmap;
int bx,by;
BITMAP bit;
MemDC=CreateCompatibleDC(hdc);
OldBitmap=(HBITMAP)SelectObject(MemDC, hBit);
GetObject(hBit,sizeof(BITMAP),&bit);
bx=bit.bmWidth;
by=bit.bmHeight;
BitBlt(hdc,x,y,bx+x,by+y,MemDC,0,0,SRCCOPY);
SelectObject(MemDC,OldBitmap);
DeleteDC(MemDC);
}
LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
static HBITMAP hBit;
switch(iMessage) {
case WM_PAINT:
hdc=BeginPaint(hWnd, &ps);
hBit=LoadBitmap(g_hInst, MAKEINTRESOURCE(IDB_BITMAP1));
DrawBitmap(hdc,10,10,hBit);
DeleteObject(hBit);
EndPaint(hWnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}
Àμö·Î Àü´ÞµÇ´Â ÀÓÀÇÀÇ ºñÆ®¸Ê¿¡ ´ëÇØ µ¿ÀÛÇØ¾ß ÇϹǷΠGetObject ÇÔ¼ö·Î ÀÌ ºñÆ®¸Ê ¿ÀºêÁ§Æ®ÀÇ Å©±â¸¦ ½ÇÇàÁß¿¡ Á¶»çÇϵµ·Ï ÇÏ¿´´Ù. BITMAP ±¸Á¶Ã¼¸¦ ¼±¾ðÇϰí GetObject·Î Á¤º¸¸¦ Á¶»çÇÑ ÈÄ bmWidth, bmHeight ¸â¹ö¸¦ ÀÐ¾î ºñÆ®¸Ê Å©±â¸¦ ±¸ÇÏ¿´´Ù. µû¶ó¼ ÀÌ ÇÔ¼ö´Â ¾î¶² Å©±âÀÇ ºñÆ®¸ÊÀÌ¶óµµ ÀÓÀÇÀÇ À§Ä¡¿¡ Ãâ·ÂÇÒ ¼ö ÀÖ´Ù.
| ||||||||||||||||
| Âü°íÇÔ¼ö |
| ||||||||||||||||
| Ç÷§Æû | 95ÀÌ»ó | ||||||||||||||||
| ÂüÁ¶ |
|
|
written by http://www.winapi.co.kr
|