WM_GETMINMAXINFO

Àμö

wParam : »ç¿ëµÇÁö ¾ÊÀ½

lParam : À©µµ¿ìÀÇ ÃÖ¼Ò, ÃÖ´ë Å©±â¸¦ ÁöÁ¤ÇÏ´Â MINMAXINFO ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍÀÌ´Ù. ÀÌ ±¸Á¶Ã¼°ªÀ» º¯°æÇϸé ÃÖ¼Ò, ÃÖ´ë Å©±â¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù.

typedef struct tagMINMAXINFO {
    POINT ptReserved; 
    POINT ptMaxSize; 
    POINT ptMaxPosition; 
    POINT ptMinTrackSize; 
    POINT ptMaxTrackSize; 
} MINMAXINFO; 
¸â¹ö

¼³¸í

ptReserved

¿¹¾àµÈ ¸â¹ö

ptMaxSize

À©µµ¿ì¸¦ ÃÖ´ëÈ­ÇßÀ» ¶§ÀÇ Å©±â

ptMaxPosition

À©µµ¿ì¸¦ ÃÖ´ëÈ­ÇßÀ» ¶§ÀÇ À§Ä¡

ptMinTrackSize

°æ°è¼±À» µå·¡±×ÇÏ¿© Á¶Á¤ÇÒ ¼ö ÀÖ´Â ÃÖ¼Ò Å©±â

ptMaxTrackSize °æ°è¼±À» µå·¡±×ÇÏ¿© Á¶Á¤ÇÒ ¼ö ÀÖ´Â ÃÖ´ë Å©±â
¼³¸í

ÀÌ ¸Þ½ÃÁö´Â À©µµ¿ìÀÇ Å©±â³ª À§Ä¡°¡ º¯°æµÇ±â Á÷Àü¿¡ À©µµ¿ì¿¡°Ô º¸³»Áø´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÀÌ ¸Þ½ÃÁöÀÇ µî´äÇÏ¿© lParamÀ¸·Î Àü´ÞµÇ´Â MINMAXINFO ±¸Á¶Ã¼¸¦ º¯°æÇϸé À©µµ¿ìÀÇ Å©±â³ª À§Ä¡´Â ÀÌ ±¸Á¶Ã¼ÀÇ °ª¿¡ ¿µÇâÀ» ¹Þ°Ô µÈ´Ù. ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÏÁö ¾ÊÀ¸¸é À©µµ¿ìÀÇ Å©±â´Â ÀÚÀ¯·Ó°Ô Á¶Á¤ÇÒ ¼ö ÀÖÀ¸³ª ÀÌ ¸Þ½ÃÁö¿¡¼­ ÃÖ¼Ò, ÃÖ´ë Å©±â¸¦ º¯°æÇÏ¸é ±× ¹üÀ§³»¿¡¼­¸¸ À©µµ¿ì Å©±â Á¶Á¤ÀÌ °¡´ÉÇÏ´Ù.

¸¸¾à ÀÛ¾÷ ¿µ¿ªÀÌ ³Ê¹« Á¼À¸¸é Â÷Àϵå ÄÁÆ®·ÑÀ» ¹èÄ¡Çϴµ¥ ¹®Á¦°¡ Àְųª ÅؽºÆ® ¹èÄ¡°¡ ¾î·Á¿öÁø´Ù¸é ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÏ¿© ÃÖ¼Ò Å©±â¸¦ ÀÏÁ¤ ÆøÀ¸·Î Á¦ÇÑÇÒ ¼ö ÀÖ´Ù. MINMAXINFO ±¸Á¶Ã¼ÀÇ ¸â¹ö Àüü¸¦ ´Ù ¼öÁ¤ÇÒ ÇÊ¿ä´Â ¾øÀ¸¸é ¿øÇÏ´Â ¸â¹ö¸¸ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.

¸®ÅÏ

¸Þ½ÃÁö¸¦ ó¸®ÇßÀ¸¸é 0À» ¸®ÅÏÇÑ´Ù.

¿¹Á¦

¿¹Á¦ 1

´ÙÀ½ ¿¹Á¦´Â ÀÌ ¸Þ½ÃÁö¸¦ ó¸®ÇÏ¿© À©µµ¿ìÀÇ Æ®·¡Å· Å©±â¸¦ ÀÏÁ¤ÇÏ°Ô Á¦ÇÑÇÑ´Ù.

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
	HDC hdc;
	PAINTSTRUCT ps;
	LPMINMAXINFO mmi;
	TCHAR Mes[]="ÀÌ À©µµ¿ìÀÇ ÃÖ¼Ò Å©±â´Â 200*100, ÃÖ´ë Å©±â´Â 600*300ÀÔ´Ï´Ù";

	switch(iMessage) {
	case WM_GETMINMAXINFO:
		mmi=(LPMINMAXINFO)lParam;
		mmi->ptMinTrackSize.x=200;
		mmi->ptMinTrackSize.y=100;
		mmi->ptMaxTrackSize.x=600;
		mmi->ptMaxTrackSize.y=300;
		mmi->ptMaxPosition.x=10;
		mmi->ptMaxPosition.y=10;
		mmi->ptMaxSize.x=800;
		mmi->ptMaxSize.y=200;
		return 0;
	case WM_PAINT:
		hdc=BeginPaint(hWnd, &ps);
		TextOut(hdc,10,10,Mes,lstrlen(Mes));
		EndPaint(hWnd, &ps);
		return 0;
	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;
	}
	return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

°æ°è¼±À» µå·¡±×ÇÏ¿© ÁÙÀÏ ¼ö ÀÖ´Â À©µµ¿ìÀÇ ÃÖ¼Ò Å©±â´Â 200*100ÀÌÇÏ°¡ µÉ ¼ö ¾øÀ¸¸ç ÃÖ´ë Å©±â´Â 600*300ÀÌ»óÀÌ µÉ ¼ö ¾ø´Ù. ¶ÇÇÑ Å¸ÀÌƲ ¹Ù¸¦ ´õºí Ŭ¸¯ÇÏ¿© ÃÖ´ëÈ­ÇßÀ» ¶§ À©µµ¿ì Å©±â´Â 800*200ÀÌ µÇ¸ç À̶§ÀÇ À§Ä¡´Â 10,10ÀÌ µÈ´Ù.

Ç÷§Æû

95ÀÌ»ó

ÂüÁ¶

 


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