¥Õ¥£¥í¤Î¼note

¤³¤³¤Ç¤ÏÆæÇ­¤¬³Ø¤ó¤À¥×¥í¥°¥é¥ß¥ó¥°¤Î¥á¥â¤ò¤·¤Æ¤¤¤Þ¤¹¡£
ºÇ¶á»Å»ö¤Î¤È¤­¤Ëºî¤Ã¤¿ÈÆÍÑ´Ø¿ô¤ò¸ø³«¤·¤Æ¤¤¤Þ¤¹¡£
¤Þ¤À¤Þ¤À¥Ò¥è¥Ã¥³¤Ê¤Î¤Ç´Ö°ã¤¤¤¬¤¢¤ì¤Ð¤´»ØÅ¦²¼¤µ¤¤¡Ä(´À)
C++¥á¥â(Win32API)¡§¥«¥é¡¼¥À¥¤¥¢¥í¥°

¢¨ÀèÆüC++(Win32API)¤ò»È¤Ã¤¿»þ¤Ë³Ð¤¨¤¿ÆâÍÆ¤ò¥á¥â¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤Þ¤ÀÊÙ¶¯Ãæ¤Ê¤Î¤Ç¡¢´Ö°ã¤¤¤¬¤¢¤ì¤Ð¤´»ØÅ¦¤¯¤À¤µ¤¤¡£

¥«¥é¡¼¥À¥¤¥¢¥í¥° ¡¡¡¡ ¥«¥é¡¼¥À¥¤¥¢¥í¥°

¡Ú¥«¥é¡¼¥À¥¤¥¢¥í¥°É½¼¨´Ø¿ô¡Û

BOOL ChooseColor(LPCHOOSECOLOR cc);
¡¡Â裱°ú¿ô¡§CHOOSECOLOR¹½Â¤ÂÎ
¡¡Ìá¤êÃÍ¡¡¡§À®ÈÝ(True/False)

¡ÚCHOOSECOLOR¹½Â¤ÂΡÛ

Struct CHOOSECOLOR
{
	DWORD		lStructSize		//¹½Â¤ÂΤΥµ¥¤¥º
	HWND		hwndOwner			//¥¦¥£¥ó¥É¥¦¥Ï¥ó¥É¥ë
	HWND		hInstance			//¥¤¥ó¥¹¥¿¥ó¥¹¥Ï¥ó¥É¥ë
	COLORREF		rgbResult			//½é´ü¥«¥é¡¼¡¦ÁªÂò¥«¥é¡¼
	COLORREF*		lpCustColors		//¥«¥¹¥¿¥à¥«¥é¡¼(16¿§¤Þ¤Ç)
	DWORD		Flags			//½é´ü²½¥Õ¥é¥°
	LPARAM		lCustData			//¥Õ¥Ã¥¯¥×¥í¥·¡¼¥¸¥ã¤ËÅϤ¹¥Ç¡¼¥¿
	LPCCHOOKPROC	lpfnHook			//¥Õ¥Ã¥¯¥×¥í¥·¡¼¥¸¥ã(Flags¤ËCC_ENABLEHOOK¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ëưºî)
	LPCTSTR		lpTemplateName		//¥ê¥½¡¼¥¹Ì¾¾Î(Flags¤ËCC_ENABLETEMPLATE¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ëưºî)
}

¡ÚFlags(½é´ü²½¥Õ¥é¥°)¡Û

CC_RGBINIT				//rgbResult¤ò½é´ü¥«¥é¡¼¤ËÀßÄꤹ¤ë
CC_FULLOPEN			//¥ª¡¼¥×¥ó»þ¤Ë¥«¥¹¥¿¥à¥«¥é¡¼ÀßÄêÁë¤ò³«¤¯
CC_PREVENTFULLOPEN			//¡Ö¿§¤ÎºîÀ®¡×¥Ü¥¿¥ó¤ò̵¸ú¤Ë¤¹¤ë
CC_SHOWHELP			//¥Ø¥ë¥×¥Ü¥¿¥ó¡Ö?¡×¤òɽ¼¨
CC_ENABLEHOOK			//¥Õ¥Ã¥¯¥×¥í¥·¡¼¥¸¥ã¤ò»È¤¦
CC_ENABLETEMPLATE			//¥ê¥½¡¼¥¹¤òÍøÍѤ¹¤ë
CC_ENABLETEMPLATEHANDLE		//hInstance¤òÍ­¸ú¤Ë¤¹¤ë
CC_SOLIDCOLOR			//¥½¥ê¥Ã¥É¥«¥é¡¼¤À¤±¤òɽ¼¨¤¹¤ë
CC_ANYCOLOR			//»ÈÍѲÄǽ¤ÊÁ´¤Æ¤Î¿§¤òɽ¼¨¤¹¤ë

¡Ú¥À¥¤¥¢¥í¥°¤Î°ÌÃÖ¡Û
¡¡¡¡¥«¥é¡¼¥À¥¤¥¢¥í¥°¤Îɽ¼¨°ÌÃÖ¤ò»ØÄꤹ¤ë¤Ë¤Ï¡¢¥Õ¥Ã¥¯¥×¥í¥·¡¼¥¸¥ã¤ò»È¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
¡¡¡¡¥À¥¤¥¢¥í¥°¤¬ºîÀ®¤µ¤ì¤¿¤È¤­(WM_INITDIALOG)¤Ë¡¢MoveWindow´Ø¿ô¤Ç°Üư¤µ¤»¤Þ¤¹¡£



¡Ú¥µ¥ó¥×¥ë¥³¡¼¥É¡Û

void Sumple()
{
	//¥«¥¹¥¿¥à¥«¥é¡¼¤òÇÛÎó¤Ë³ÊǼ(16¿§¤Þ¤ÇÀßÄê²Äǽ)
	COLORREF CustColors2[16];
	CustColors2[0]= RGB(255,0,0);
	CustColors2[1]= RGB(0,255,0);
	CustColors2[2]= RGB(0,0,255);
	
	//CHOOSECOLOR¹½Â¤ÂÎ
	CHOOSECOLOR cc;
	cc.lStructSize = sizeof(cc);
	cc.hwndOwner = NULL;
	cc.hInstance = NULL;
	cc.rgbResult = RGB(255,0,0);
	cc.lpCustColors = CustColors;
	cc.Flags = CC_RGBINIT | CC_ENABLEHOOK;
	cc.lCustData = NULL;
	cc.lpfnHook = CCHookProc;
	cc.lpTemplateName = NULL;
	
	//¥«¥é¡¼¥À¥¤¥¢¥í¥°É½¼¨
	ChooseColor(&cc);
	
	//cc.rgbResult¤ËÁªÂò¤·¤¿¿§¤¬³ÊǼ¤µ¤ì¤Þ¤¹
}

//¥Õ¥Ã¥¯¥×¥í¥·¡¼¥¸¥ã
UINT CALLBACK CCHookProc(HWND hdlg,UINT msg,WPARAM wp,LPARAM lp)
{
	switch(msg)
	{
	case WM_INITDIALOG:
		//¥À¥¤¥ä¥í¥°¥µ¥¤¥º¤ò¼èÆÀ
		RECT rect;
		GetWindowRect(hdlg,&rect);
		SIZE sz;
		sz.cx = rect.right - rect.left;		//²£Éý
		sz.cy = rect.bottom - rect.top;		//½ÄÉý

		//½ÐÎϰÌÃÖ¤ÎÀßÄê
		POINT pnt;
		pnt.x = 100;
		pnt.y = 100;
	
		//¥À¥¤¥ä¥í¥°°ÌÃÖÀßÃÖ
		MoveWindow(hdlg , pnt.x , pnt.y , sz.cx , sz.cy , TRUE);
	
		//¥À¥¤¥¢¥í¥°¤Î¥¿¥¤¥È¥ë¥»¥Ã¥È
		SetWindowText(hdlg,TEXT("¥«¥é¡¼¥À¥¤¥¢¥í¥°"));
		
		break;
	default:
		return FALSE;
	}
	return TRUE;
}
|C++ | 19:02 | comments(0) | trackbacks(0) |
C++¥á¥â(Win32API)¡§¥Û¥Ã¥È¥­¡¼(¥­¡¼ÆþÎϤδƻë)

¢¨ÀèÆüC++(Win32API)¤ò»È¤Ã¤¿»þ¤Ë³Ð¤¨¤¿ÆâÍÆ¤ò¥á¥â¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤Þ¤ÀÊÙ¶¯Ãæ¤Ê¤Î¤Ç¡¢´Ö°ã¤¤¤¬¤¢¤ì¤Ð¤´»ØÅ¦¤¯¤À¤µ¤¤¡£

¡Ú¥Û¥Ã¥È¥­¡¼¤È¤Ï¡Û
¼«Ê¬¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥¦¥£¥ó¥É¥¦¤¬¥¢¥¯¥Æ¥£¥Ö¾õÂ֤Ǥʤ¯¤Æ¤â´Æ»ë¤µ¤ì¤Æ¤¤¤ë¥­¡¼¡£
¥¦¥£¥ó¥É¥¦¤Î¤Ê¤¤¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¾ì¹ç¡¢¡Ö¥¿¥¤¥Þ¡¼¤ò»È¤Ã¤Æ0.1ÉÃËè¤ËGetKeyState()¤Ç¥­¡¼¤ò´Æ»ë¤¹¤ë¡×¤È¤«¤è¤êÃÇÁ³¸úΨŪ¤Ç¤¹¡£(¥Û¥Ã¥È¥­¡¼»È¤¦¤Þ¤Ç¥¿¥¤¥Þ¡¼»È¤Ã¤Æ¤Þ¤·¤¿¡¨)
¡Ö¥·¥ç¡¼¥È¥«¥Ã¥È¥­¡¼¡×¤È¤â¸Æ¤Ð¤ì¤ë¤é¤·¤¤¤Ç¤¹¡£

¡Ú¥Û¥Ã¥È¥­¡¼ÀßÃÖ´Ø¿ô¡Û
BOOL RegisterHotKey(HWND , HOT_KEY_ID , MOD_KEY , KEY);
¡¡Â裱°ú¿ô¡§¥¦¥£¥ó¥É¥¦¥Ï¥ó¥É¥ë
¡¡Â裲°ú¿ô¡§¥Û¥Ã¥È¥­¡¼¤ÎID
¡¡Â裳°ú¿ô¡§¥­¡¼½¤¾þ»Ò(MOD_SHIFT , MOD_CONTROL , MOD_ALT)
¡¡Â裴°ú¿ô¡§¥­¡¼(A¡ÁZ¤ä0¡Á9¤Ê¤É)
¡¡Ìá¤êÃÍ¡¡¡§À®ÈÝ(True/False)

¡Ú¥á¥Ã¥»¡¼¥¸¡Û
WM_HOTKEY¥á¥Ã¥»¡¼¥¸
¡¡¥Û¥Ã¥È¥­¡¼¤ò²¡¤¹¤È¥á¥Ã¥»¡¼¥¸¤¬Èô¤ó¤Ç¤­¤Þ¤¹¡£
¡¡¥¦¥£¥ó¥É¥¦¥×¥í¥·¡¼¥¸¥ã¤ÎWPARAM¤Ë¥Û¥Ã¥È¥­¡¼¤ÎID¤¬Æþ¤Ã¤Æ¤­¤Þ¤¹¡£

¡Ú¥Û¥Ã¥È¥­¡¼²ò½ü´Ø¿ô¡Û
BOOL UnregisterHotKey(hwnd , HOT_KEY_ID);
¡¡Â裱°ú¿ô¡§¥¦¥£¥ó¥É¥¦¥Ï¥ó¥É¥ë
¡¡Â裲°ú¿ô¡§¥Û¥Ã¥È¥­¡¼¤ÎID
¡¡Ìá¤êÃÍ¡¡¡§À®ÈÝ(True/False)

¡ÚÃí°Õ»ö¹à¡Û
¾¤Î¥½¥Õ¥ÈÅù¤Ç»ÈÍѤµ¤ì¤Æ¤¤¤ë¥Û¥Ã¥È¥­¡¼¤ò¿·¤·¤¯ÀßÄꤹ¤ë¤È¡¢
¸µ¡¹»È¤ï¤ì¤Æ¤¤¤¿¥Û¥Ã¥È¥­¡¼¤¬Æ°ºî¤·¤Ê¤¯¤Ê¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¡£
Î㤨¤Ð¡ÖCtrl+A¡×¤òÀßÄꤷ¤¿¾ì¹ç¡¢ËؤɤΥ¨¥Ç¥£¥¿Åù¤Ç¡ÖÁ´¤ÆÁªÂò¡×¤ò¹Ô¤¦¡ÖCtrl+A¡×¤¬µ¡Ç½¤·¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£



¡Ú¥µ¥ó¥×¥ë¥³¡¼¥É¡Û

//¥Þ¥¯¥íÄêµÁ
#define HOT_KEY_ID 100001

//¥¦¥£¥ó¥É¥¦¥×¥í¥·¡¼¥¸¥ã
LRESULT CALLBACK WndProc(HWND hwnd , UINT msg, WPARAM wp, LPARAM lp)
{
	switch(msg)
	{
	case WM_CREATE:
		//Ctrl+1¤Î¥Û¥Ã¥È¥­¡¼ÀßÄê
		RegisterHotKey(hwnd,HOT_KEY_ID,MOD_CONTROL,'1');
		break;
	case WM_HOTKEY:
		switch(wp)
		{
		case HOT_KEY_ID:
			//
			//¥Û¥Ã¥È¥­¡¼¤¬²¡¤µ¤ì¤¿¤È¤­¤Î½èÍý
			//
			break;
		}
		break;
	case WM_DESTROY:	
		//¥Û¥Ã¥È¥­¡¼²ò½ü
		UnregisterHotKey(hwnd,HOT_KEY_ID);
		break;
	default:
		return DefWindowProc(hwnd,msg,wp,lp);
		break;
		
	}
	return 0;
}
|C++ | 16:11 | comments(0) | trackbacks(0) |
C++¥á¥â(Win32API)¡§¥¿¥¤¥Þ¡¼

¢¨ÀèÆüC++(Win32API)¤ò»È¤Ã¤¿»þ¤Ë³Ð¤¨¤¿ÆâÍÆ¤ò¥á¥â¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤Þ¤ÀÊÙ¶¯Ãæ¤Ê¤Î¤Ç¡¢´Ö°ã¤¤¤¬¤¢¤ì¤Ð¤´»ØÅ¦¤¯¤À¤µ¤¤¡£

¡Ú¥¿¥¤¥Þ¡¼¤ÎÀßÄêÊýË¡¡Û
UINT_PTR SetTimer(HWND , TIMER_ID , SEC , TIMERPROC);
¡¡Â裱°ú¿ô¡§¥¦¥£¥ó¥É¥¦¥Ï¥ó¥É¥ë
¡¡Â裲°ú¿ô¡§¥¿¥¤¥Þ¡¼¤ÎID
¡¡Â裳°ú¿ô¡§¥¿¥¤¥à¤Î´Ö³Ö(1/1000ÉÃñ°Ì)
¡¡Â裴°ú¿ô¡§¥¿¥¤¥Þ¤Î¥×¥í¥·¡¼¥¸¥ã
¡¡Ìá¤êÃÍ¡¡¡§À®¸ù(¥¿¥¤¥Þ¡¼¤ÎID),¼ºÇÔ(0)

¡Ú¥á¥Ã¥»¡¼¥¸¡Û
WM_TIMER¥á¥Ã¥»¡¼¥¸
¡¡»ØÄêÉÃËè¤Ë¥á¥Ã¥»¡¼¥¸¤¬Èô¤ó¤Ç¤­¤Þ¤¹¡£
¡¡¥¦¥£¥ó¥É¥¦¥×¥í¥·¡¼¥¸¥ã¤ÎWPARAM¤Ë¥¿¥¤¥Þ¡¼¤ÎID¤¬Æþ¤Ã¤Æ¤¤¤Þ¤¹¡£

¡Ú¥¿¥¤¥Þ¡¼¤Î²ò½ü¡Û
BOOL KillTimer(hwnd , TIMER_ID);
¡¡Â裱°ú¿ô¡§¥¦¥£¥ó¥É¥¦¥Ï¥ó¥É¥ë
¡¡Â裲°ú¿ô¡§¥¿¥¤¥Þ¡¼¤ÎID
¡¡Ìá¤êÃÍ¡¡¡§À®ÈÝ(True/False)



¡Ú¥µ¥ó¥×¥ë¥³¡¼¥É£±¡Û

//¥Þ¥¯¥íÄêµÁ
#define TIMER_ID 100001

//¥¦¥£¥ó¥É¥¦¥×¥í¥·¡¼¥¸¥ã
LRESULT CALLBACK WndProc(HWND hwnd , UINT msg, WPARAM wp, LPARAM lp)
{
	switch(msg)
	{
	case WM_CREATE:
		//¥¿¥¤¥Þ¡¼¥»¥Ã¥È
		SetTimer(hwnd , TIMER_ID , 5000 , NULL);
		break;
	case WM_TIMER:
		switch(wp)
		{
		case TIMER_ID:
			//
			//¥¿¥¤¥Þ¡¼½èÍý
			//
			break;
		}
		break;
	case WM_DESTROY:	
		//¥¿¥¤¥Þ¡¼²ò½ü
		KillTimer(hwnd , TIMER_ID);
		break;
	default:
		return DefWindowProc(hwnd,msg,wp,lp);
		break;
	}
	
	return 0;
}


¡Ú¥µ¥ó¥×¥ë¥³¡¼¥É£²¡Û(¥¿¥¤¥Þ¥×¥í¥·¡¼¥¸¥ãÍøÍÑ)

//¥Þ¥¯¥íÄêµÁ
#define TIMER_ID 100001

//¥¦¥£¥ó¥É¥¦¥×¥í¥·¡¼¥¸¥ã
LRESULT CALLBACK WndProc(HWND hwnd , UINT msg, WPARAM wp, LPARAM lp)
{
	switch(msg)
	{
	case WM_CREATE:
		//¥¿¥¤¥Þ¡¼¥»¥Ã¥È
		SetTimer(hwnd , TIMER_ID , 5000 , (TIMERPROC)TimerProc);
		break;
	case WM_DESTROY:	
		//¥¿¥¤¥Þ¡¼²ò½ü
		KillTimer(hwnd , TIMER_ID);
		break;
	default:
		return DefWindowProc(hwnd,msg,wp,lp);
		break;
	}
	
	return 0;
}
//¥¿¥¤¥Þ¥×¥í¥·¡¼¥¸¥ã
BOOL CALLBACK TimerProc(HWND hwnd , UINT msg, WPARAM wp, LPARAM lp)
{
	switch(msg)
	{
	case WM_TIMER:
		switch(wp)
		{
		case TIMER_ID:
			//
			//¥¿¥¤¥Þ¡¼½èÍý
			//
			break;
		}
		break;
	default:
		return DefWindowProc(hwnd,msg,wp,lp);
		break;
	}
	return 0;
}
|C++ | 15:59 | comments(0) | trackbacks(0) |
VC++¥È¥é¥Ö¥ë¥á¥â¡§³«È¯´Ä¶­°Ê³°¤Çưºî¤·¤Ê¤¤

¼«Ê¬¤ÎPC¤Ç¤ÏÀµ¾ï¤Ë¥³¥ó¥Ñ¥¤¥ë¡¢Æ°ºî¤â¤·¤¿¤Î¤Ë¡¢
Ê̤ÎPC¤Çưºî¤µ¤»¤è¤¦¤È¤¹¤ë¤È°Ê²¼¤Î¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬½Ð¤Æ¤­¤Þ¤·¤¿¡£

¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸

¤¤¤í¤¤¤í¥³¡¼¥É¤òÏ®¤Ã¤Æ¤ß¤Þ¤·¤¿¤¬¡Ä·ë¶ÉVisualStudio(¤³¤³¤Ç¤Ï2008)¤ÎÀßÄ꤬ɬÍפÀ¤Ã¤¿¸«¤¿¤¤¤Ê¤Î¤Ç¥á¥â¤·¤Æ¤ª¤­¤Þ¤¹¡£

¤É¤¦¤ä¤é¤³¤Î¥á¥Ã¥»¡¼¥¸¤Ï¡¢DLL¤¬Â­¤ê¤Ê¤¤»þ¤Ë½Ð¤ë¤â¤Î¤é¤·¤¤¤Ç¤¹¡Ä¡¨
¤½¤¦¤¤¤¦ÆâÍÆ¤Çɽ¼¨¤·¤Æ¤¯¤ì¤èMS¡Ä
¤Á¤Ê¤ß¤ËDLL¤ÏVS¤¬ÊÝÍ­¤·¤Æ¤¤¤ë¤â¤Î¤Î¤è¤¦¤Ç¤¹¡£

²ò·è¤¹¤ë¤Ë¤Ï¡¢VS¤Ç°Ê²¼¤ÎÀßÄê¤ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

¤Þ¤º¡¢
¡¡¡¡[¥×¥í¥¸¥§¥¯¥È]¢ª[¡û¡û¤Î¥×¥í¥Ñ¥Æ¥£]
¤«¤é¥×¥í¥Ñ¥Æ¥£¥Ú¡¼¥¸¤ò³«¤­¤Þ¤¹¡£

¥×¥í¥Ñ¥Æ¥£¥Ú¡¼¥¸¤Îº¸Â¦¤Ë¤¢¤ë¥á¥Ë¥å¡¼¤«¤é
¡¡[¹½À®¥×¥í¥Ñ¥Æ¥£]¢ª[C/C++]¢ª[¥³¡¼¥ÉÀ¸À®]
¤òÁªÂò¤·¡¢ÀßÄê¥Ú¡¼¥¸¤ò³«¤­¤Þ¤¹¡£

ÀßÄê²èÌÌ

Êѹ¹¤¹¤ë²Õ½ê¤Ï
¡¡[¥é¥ó¥¿¥¤¥à¥é¥¤¥Ö¥é¥ê]
¤À¤±¤Ç¤¹¡£

[¥é¥ó¥¿¥¤¥à¥é¥¤¥Ö¥é¥ê]¥×¥ë¥À¥¦¥ó¥á¥Ë¥å¡¼¤Ë¤Ï°Ê²¼¤Î¹àÌܤ¬¤¢¤ê¤Þ¤¹¡£

ÀßÄê°ìÍ÷

½é´üÀßÄê¤À¤È
¡¡¡¡¡Ö¥Þ¥ë¥Á¥¹¥ì¥Ã¥ÉDLL(/MD)¡×¤«¡Ö¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¥Ç¥Ð¥Ã¥°DLL(/MDd)¡×
¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È»×¤ï¤ì¤Þ¤¹¡£

¤³¤ì¤ò
¡¡¡¡¡Ö¥Þ¥ë¥Á¥¹¥ì¥Ã¥É(/MT)¡×¤«¡Ö¥Þ¥ë¥Á¥¹¥ì¥Ã¥É¥Ç¥Ð¥Ã¥°(/MTd)¡×
¤Ë¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ì¤Ð¡¢VS¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤¤¤Ê¤¤PC¤Ç¤âÀµ¾ï¤Ëưºî¤¹¤ë¤è¤¦¤Ë¤Ê¤ë¤«¤È»×¤¤¤Þ¤¹¡£

¤¿¤À¡¢¤³¤ÎÊýË¡¤À¤ÈVS¤ÎDLL¤òexe¤Ë¼è¤ê¹þ¤ó¤Ç¤·¤Þ¤¤exe¤Î¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤¬Â礭¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤É¤¦¤·¤Æ¤â¥µ¥¤¥º¤¬µ¤¤Ë¤Ê¤ë¤Ê¤éɬÍפÊDLL¤òõ¤·¤Æ¡¢exe¤ÈÊ̤Ëdll¤ò»ý¤¿¤»¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡Ä¤ó¤Ç¤·¤ç¤¦¤«¡¢¤Ï¤Æ¡©
»î¤·¤Æ¤¤¤Ê¤¤¤Î¤È¡¢C¤ÎÍý²òÅÙ¤¬¤Þ¤ÀÄ㤤¤Î¤Ç¡¢¤Á¤ç¤Ã¤È¤ï¤«¤ê¤Þ¤»¤ó¡¨

|C++ | 15:49 | comments(0) | trackbacks(0) |
ActionScript2.0¥á¥â¡§¥¤¥Ù¥ó¥È»þ¤Î¥¹¥³¡¼¥×(ÊÑ¿ô¤Î»²¾ÈÈϰÏ)

¥¯¥é¥¹Æâ¤Ç¥¤¥Ù¥ó¥È¤òµ­½Ò¤·¤¿¾ì¹ç¡¢
¸Æ¤Ó½Ð¤¹¥á¥½¥Ã¥ÉÆâ¤«¤é¡¢¥¯¥é¥¹ÊÑ¿ô¤¬»²¾È¤Ç¤­¤Ê¤¤ÌäÂ꤬¤¢¤Ã¤¿¤Î¤Ç¥á¥â¤·¤Æ¤ª¤­¤Þ¤¹¡£

class Test{
	var str:String = "test";
	function Test(MC:MovieClip){
		trace("output" + val);
		//MC(MovieClip)¤ò¥¯¥ê¥Ã¥¯»þ¡¢Method¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë
		MC.onPress = Method;
	}
	
	function Method():Void{
		trace(str);
	}
}

¾åµ­¤Î¤è¤¦¤Ë¡¢MovieClip¤ÎonPress¥¤¥Ù¥ó¥È¤ÇMethod¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤ÆÊÑ¿ôstr¤ò½ÐÎϤµ¤»¤è¤¦¤È¤·¤Æ¤¤¤Þ¤¹¡£
¡Ötest¡×¤¬½ÐÎϤµ¤ì¤ë¤³¤È¤ò´üÂÔ¤·¤Æµ­½Ò¤·¤Þ¤·¤¿¤¬¡¢¼ÂºÝ¤Ë¤³¤ì¤Ç¤Ï¡Öundefined¡×¤¬½ÐÎϤµ¤ì¤Æ¤·¤Þ¤¤¤Þ¤¹¡£

¤É¤¦¤ä¤é¤³¤ì¤Ï¥¹¥³¡¼¥×(ÊÑ¿ô¤Î»²¾ÈÈϰÏ)¤¬¡¢¥¤¥Ù¥ó¥È¤Ç¸Æ¤Ó½Ð¤·¤¿¥á¥½¥Ã¥ÉÆâ¤Ç¤ÏÊѤï¤Ã¤Æ¤·¤Þ¤¦¤³¤È¤¬¸¶°ø¤Ë¤Ê¤ë¤è¤¦¤Ç¤¹¡£

onPressÅù¤Î¥¤¥Ù¥ó¥È¤òµ­½Ò¤¹¤ë¾ì¹ç¡¢¡ÖMC.onPress¡×¤Î¤è¤¦¤Ëµ­½Ò¤¹¤ë¤«¤È»×¤¤¤Þ¤¹¤¬¡¢
¤³¤Î¤è¤¦¤Ë¤·¤¿¾ì¹ç¡¢¤É¤¦¤ä¤é¡ÖMC¡×¤ò¥¹¥³¡¼¥×¤Ë»ØÄꤵ¤ì¤Æ¤·¤Þ¤¦¤è¤¦¤Ç¤¹¡£

½¾¤Ã¤Æ¡¢¥¤¥Ù¥ó¥È¤Ç¸Æ¤Ó½Ð¤·¤¿¥á¥½¥Ã¥ÉÆâ¤ÎstrÊÑ¿ô¤Ï¥¯¥é¥¹ÊÑ¿ô¤Î¡Östr¡×¤Ç¤Ï¤Ê¤¯¡¢¡ÖMC.str¡×¤òÆÉ¤ß½Ð¤½¤¦¤È¤·¤Æ¡¢¤½¤Î¤¿¤á¤Ë¡Öundefined¡×¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤è¤¦¤Ç¤¹¡£


¤³¤ì¤ò²ò·è¤¹¤ë¤¿¤á¤Ë¤Ï¡¢mx.utils.Delegate¥¯¥é¥¹¤ò»È¤¦É¬Íפ¬¤¢¤ê¤Þ¤¹¡£
µ­½ÒÊýË¡¤Ï²¼µ­¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

import mx.utils.Delegate;

class Test{
	var val:String = "test";
	function Test(MC:MovieClip){
		trace("output" + val);
		//MC(MovieClip)¤ò¥¯¥ê¥Ã¥¯»þ¡¢Method´Ø¿ô¤ò¼Â¹Ô¤¹¤ë
		MC.onPress = Delegate.create(this,Method);
	}
	
	function Method():Void{
		trace(val);
	}
}

Á°½Ò¤·¤¿¥³¡¼¥É¤È¤Î°ã¤¤¤Ï¡¢¥¯¥é¥¹ÄêµÁ¤ÎÁ°¤Ë¡Ömx.utils.Delegate¡×¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Æ¤¤¤ëÅÀ¤È¡¢
Delegate.create¥á¥½¥Ã¥É¤ò²ð¤·¤Æ¡¢Method¥á¥½¥Ã¥É¤ò½èÍý¤µ¤»¤Æ¤¤¤ëÅÀ¤À¤±¤Ç¤¹¡£

¤³¤ì¤Ë¤è¤ê¡¢this(¥¯¥é¥¹¼«¿È)¤ò¥¹¥³¡¼¥×¤Ë»ØÄꤷ¤Æ¡¢¥á¥½¥Ã¥É¤ò¼Â¹Ô¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£



¤Þ¤¿¡¢setInterval¤Ç¤âƱ¤¸¸½¾Ý¤¬µ¯¤­¤Þ¤¹¤¬¡¢

setInterval(Delegate.create(this,Method) , 1000);

¾åµ­¤Î¤è¤¦¤Ëµ­½Ò¤¹¤ì¤Ð¡¢this(¥¯¥é¥¹¼«¿È)¤ò¥¹¥³¡¼¥×¤Ë»ØÄꤷ¤Æ¡¢¼Â¹Ô¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£


»ä¤¬ActionScript2.0¤Ç¥¯¥é¥¹¤ò°·¤¦¤è¤¦¤Ë¤Ê¤Ã¤Æ1ǯ¤Û¤É¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢¤³¤ÎÌäÂê¤Ë¤ÏŤ¤´ÖƬ¤òǺ¤Þ¤µ¤ì¤Þ¤·¤¿¡Ä
¤À¤Ã¤Æ»ä¤¬»ý¤Ã¤Æ¤¤¤ëËܤˤϥ¹¥³¡¼¥×¤È¤«Delegate¤Ê¤ó¤ÆºÜ¤Ã¤Æ¤Ê¤¯¤Æ¡Ä¡¨
¤³¤¦¤¤¤¦¤È¤­¤ÏWeb¤ä¸ø¼°¤Î¥Æ¥­¥¹¥È¤¬Ìò¤ËΩ¤Á¤Þ¤¹¤Í¡£

¤È¤³¤í¤Ç»ä¤¬»ý¤Ã¤Æ¤ë¤Î¤¬FLASH8¤Ê¤Î¤Ç̤¤ÀActionScript2.0¤Î¥á¥â¤Ç¤¹¡Ä¡¨
8¤Ç3.0»È¤¦ÊýË¡¤Ã¤Æ¤Ê¤¤¤Î¤Ç¤·¤ç¤¦¤«¡Ä¡©
CS3¤Î¼¡¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤¿¤éÇ㤦¤«¤Ê¤¡¡Ä¡©
¤¤¤Ä¤Ë¤Ê¤ë¤«Ê¬¤«¤ê¤Þ¤»¤ó¤¬¡Ä

|FLASH¡¦AS | 18:09 | comments(0) | trackbacks(0) |
Excel&VBA¥á¥â¡§Excel¤ÇºîÀ®¤·¤¿É½¤ò²èÁü¤È¤·¤Æ¥³¥Ô¡¼¤¹¤ë

²ñ¼Ò¤Î»Å»ö¤ÇExcel¤ÇºîÀ®¤·¤¿É½¤ò²èÁü¤È¤·¤Æ¥³¥Ô¡¼¤¹¤ëÊýË¡¤ò¶µ¤¨¤Æ¤â¤é¤¤¤Þ¤·¤¿¡£
º£¤Þ¤ÇÃΤé¤Ê¤«¤Ã¤¿¤Î¤Ç¤¹¤¬¡¢Excel¤Îɸ½àµ¡Ç½¤Ç´Êñ¤Ë¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë¤ó¤Ç¤¹¤Í¡Ä¡ª

»È¤¤Êý¤Ë¤è¤Ã¤Æ¤ÏÊØÍø¤½¤¦¤Ê¤Î¤Ç¥¶¥Ã¤È¤Ç¤¹¤¬¡¢¥á¥â¤·¤Æ¤ª¤­¤Þ¤¹¡£

Ëܵ­»ö¤ÎËöÈø¤ËVBA¤Î¥³¡¼¥É¤â¥á¥â¤·¤Æ¤ª¤­¤Þ¤¹¡£(¥Þ¥¯¥í¤Çµ­Ï¿¤·¤Æ¤â³Îǧ¤Ç¤­¤Þ¤¹¤¬)


¡ÖExcelÁàºî¼ê½ç¡×

­¡É½¤òºîÀ®¤·¤Þ¤¹(¥ª¡¼¥È¥·¥§¥¤¥×¤ò»È¤Ã¤Æ¤âOK)



­¢¥ª¡¼¥È¥·¥§¥¤¥×¤â´Þ¤á¤ÆÁªÂò¤·¡¢ÉáÄ̤Υ³¥Ô¡¼Áàºî¤ÈƱ¤¸¤è¤¦¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£
­£Shift¥­¡¼¤ò²¡¤·¤Ê¤¬¤é¡¢[ÊÔ½¸]¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤È¡¢¡Ö¿Þ¤ÎޤêÉÕ¤±¡×¤È¤¤¤¦¹àÌܤ¬¤Ç¤Æ¤­¤Þ¤¹¡£



­¤¡Ö¿Þ¤ÎޤêÉÕ¤±¡×¤ò¥¯¥ê¥Ã¥¯¤¹¤ë¤ÈÀè¤Û¤ÉÁªÂò¤·¤¿ÈϰϤÎɽ¤¬²èÁü¤È¤·¤ÆÅ½¤êÉÕ¤±¤é¤ì¤Þ¤¹¡£




­¤-2¡¡¤Á¤Ê¤ß¤Ë¡Ö¿Þ¤Î¥ê¥ó¥¯Å½¤êÉÕ¤±¡×¤ò¥¯¥ê¥Ã¥¯¤·¤Æ¤â²èÁü¤ÏޤêÉÕ¤±¤Ç¤­¤Þ¤¹¡£



­¦£²¤Ä¤Î°ã¤¤¤Ç¤¹¤¬¡¢¡Ö¿Þ¤ÎޤêÉÕ¤±¡×¤ÏޤêÉÕ¤±¸å¡¢´°Á´¤Ë²èÁü¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¤¬¡¢
¡¡¡¡¡Ö¿Þ¤ÎޤêÉÕ¤±¡×¤ÏޤêÉÕ¤±¸å¤â¡¢¸µ¤Îɽ¤ÎÊѹ¹¤¬²èÁü¤Ë¤âÈ¿±Ç¤µ¤ì¤Þ¤¹¡£
¢¨²¼²èÁü¤Î¾å¤Ï²¼¤Îɽ¡¢º¸²¼¤Ï¡Ö¿Þ¤ÎޤêÉÕ¤±¡×¡¢±¦²¼¤Ï¡Ö¿Þ¤Î¥ê¥ó¥¯Å½¤êÉÕ¤±¡×
¡¡¡¡¸µ¤Îɽ¤òÊѹ¹¤¹¤ë¤È¡¢¡Ö¿Þ¤Î¥ê¥ó¥¯Å½¤êÉÕ¤±¡×¤ÇºîÀ®¤·¤¿²èÁü¤Ë¤âÈ¿±Ç¤µ¤ì¤Þ¤¹¡£





¡ÖVBA¥³¡¼¥É¡×

¾åµ­¤Îºî¶È¤òVBA¤Ç½ñ¤¯¤È²¼µ­¤Î¤è¤¦¤Ê¥³¡¼¥É¤Ë¤Ê¤ê¤Þ¤¹¡£

'²èÁü¤Ë¤¹¤ëɽ¤ÎÈϰϤòÁªÂò¤¹¤ë
Range("B2:F6").Select	
'ÁªÂòÈϰϤò¥³¥Ô¡¼¤¹¤ë
Selection.Copy	
'ޤêÉÕ¤±À襻¥ë¤òÁªÂò¤¹¤ë
Range("B8").Select	
'ÁªÂò¤·¤¿¥»¥ë¤ò²èÁü¤È¤·¤ÆÅ½¤êÉÕ¤±¤ë(Link¤Ï¥ê¥ó¥¯¤Î̵ͭ(True/False))
ActiveSheet.Pictures.Paste(Link:=False)	

¸«¤Æ¤ÎÄ̤꤫¤Ê¤êñ½ã¤Ç¤¹¡£
¡ÖPictures.Paste¡×´Ø¿ô¤Ç¥¯¥ê¥Ã¥×¥Ü¡¼¥É¤ËÊݸ¤µ¤ì¤¿¥Ç¡¼¥¿¤ò½ÐÎϤ·¤Æ¤¤¤ë¤À¤±¤Î¤è¤¦¤Êµ¤¤¬¤·¤Þ¤¹¡£

¤½¤¦¤¤¤¨¤Ð¡¢Excel¤Îɽ¤ò¤½¤Î¤Þ¤Þ¥³¥Ô¡¼¤·¤Æ¡¢²èÁüÊÔ½¸¥½¥Õ¥È¤Ë¤½¤Î¤Þ¤Þ¥³¥Ô¡¼¤Ç¤­¤Þ¤¹¤·¡¢
¤½¤ì¤ÈƱ¤¸¤è¤¦¤Ê¤â¤Î¤Ê¤ó¤Ç¤·¤ç¤¦¤Í¡£

|VB¡¦VBA | 12:07 | comments(0) | trackbacks(0) |
PHP¥á¥â¡§±Ñ»ú¥¹¥Ñ¥àÂкö(ºÆ½¤Àµ)

°ÊÁ°¤ËPHP¤Ç¤Î±Ñ»ú¥¹¥Ñ¥àÂкö¤ò½ñ¤­¤Þ¤·¤¿¤¬¡Ä
·ë¶É¤½¤ÎÊýË¡¤Ç¤Ï¤¹¤êÈ´¤±¤é¤ì¤¿¤Î¤Ç¡¢ºÆÅÙ½¤Àµ¤Ç¤¹¡£

//(½¤ÀµÁ°)
if(ereg("[^ -~]",$text)){
	//½èÍý
}

¾åµ­¤Ç¤Ï2¥Ð¥¤¥Èʸ»ú¤ò´Þ¤Þ¤Ê¤¤¾ì¹ç¤ËµñÈݤ¹¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤·¤¿¤¬¡Ä
¤É¤¦¤â¡¢¤ï¤¶¤È2¥Ð¥¤¥Èʸ»ú¤ò¿ôʸ»ú¤ò´Þ¤á¤Æ¤¯¤ë±Ñ»ú¥¹¥Ñ¥à¤¬¤¢¤Ã¤¿¤Î¤Ç¡Äorz

º£²ó¤Ï¡Ö¤Ò¤é¤¬¤Ê¡×¤ò´Þ¤à¾ì¹ç¤Î¤ß½èÍý¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
¤Þ¤¡·ë¶É¿ô¹Ô¤Î½èÍý¤Ê¤ó¤Ç¤¹¤±¤É¤Í¡Ä

//(½¤Àµ¸å)
//$text¤Ë¤Ò¤é¤¬¤Ê(¤¢¡Á¤ó)¤¬´Þ¤Þ¤ì¤ë»þ¤À¤±½èÍý¤ò¹Ô¤¦
if(mb_ereg_match("[¤¢-¤ó]",$text)){
	//½èÍý
}

¾åµ­¤ÏÀµµ¬É½¸½¤Ç¡Ö¤¢¡Á¤ó¡×¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë½èÍý¤ò¤¹¤ë¤È¤¤¤¦¤â¤Î¤Ç¤¹¡£

Á°¤Ï̵Íý¤Ë1¥Ð¥¤¥Èʸ»ú¤ò¥Á¥§¥Ã¥¯¤·¤Æ¤¤¤Þ¤·¤¿¤¬¡Ä
·ë¶É¡¢±Ñ»ú¥¹¥Ñ¥à¤Ë¤Ï¤³¤ì¤¬°ìÈÖ¸ú²Ì¤¬¤¢¤ê¤½¤¦¤Ç¤¹¡Ä(´À)

|PHP | 22:09 | comments(0) | trackbacks(0) |
VB¥á¥â¡§ÆÈ¼«´Ø¿ô¡§¥¢¡¼¥¯¥¿¥ó¥¸¥§¥ó¥È

VB6¤Ç¡¢³ÑÅÙ¤òµá¤á¤ëAtn´Ø¿ô¤Ï¥¤¥Þ¥¤¥Á»È¤¤¾¡¼ê¤¬°­¤¤¤Î¤Ç¼«ºî¤·¤Þ¤·¤¿¡£

¤¤¤äƱÍͤδؿô¤Ï¤¤¤í¤ó¤Ê¤È¤³¤í¤Çºî¤é¤ì¤Æ¤¤¤Þ¤¹¤¬´º¤¨¤Æ¼«ºî¤·¤È¤­¤Þ¤¹¡£


²¼µ­¤Î´Ø¿ô¤ÏX¤ÈY¤ÎŤµ¤«¤é0¡Á360Å٤Υ饸¥¢¥ó¤òÊÖ¤·¤Þ¤¹¡£

0¡Á720ÅÙ¤ò1ÅÙ¤º¤Ä¥Æ¥¹¥È¤·¤Æ¤ß¤Æ°ì±þÌäÂê¤Ï¤¢¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£


¤â¤·ÍøÍѤµ¤ì¤ë¾ì¹ç¤Ï¡¢ÀºÅ٤ι⤤·×»»¤Ë¤Ï¸þ¤¤¤Æ¤¤¤Ê¤¤¤È»×¤ï¤ì¤ë¤Î¤Ç¤´Ãí°Õ¤ò¡£


´Ö°ã¤¤¤¬¤¢¤ì¤Ð¤´»ØÅ¦Äº¤±¤ì¤ÐÍ­Æñ¤¤¤Ç¤¹¡£

'0¡Á360Å٤Υ饸¥¢¥ó¤ò½ÐÎϤ·¤Þ¤¹(Atn2´Ø¿ô¤Ï½Ð²ó¤Ã¤Æ¤¤¤ë¤Î¤Ç´º¤¨¤ÆAtn3)
'¢¨ÀºÅÙ¤òÍפ¹¤ë½èÍý¤Ë¤Ï¸þ¤­¤Þ¤»¤ó¤Î¤Ç¤´Ãí°Õ¤ò
Public Function Atn3(ByVal vX As Double, ByVal vY As Double) As Double
'°ú¿ô¡§X¼´Ä¹¤µ
'¡¡¡¡¡¡Y¼´Ä¹¤µ
'ÌáÃÍ¡§¥é¥¸¥¢¥óÃÍ

    Dim wX  As Double
    Dim wY  As Double
    Dim wPI As Double
    
    wX = Round(vX, 12)      '¾®¿ô12·å°Ê²¼¤Ï»Í¼Î¸ÞÆþ
    wY = Round(vY, 12)
    
    wPI = 4 * Atn(1)        '±ß¼þΨ
    
    If wX = 0 Then
        If wY > 0 Then      '0ÅÙ
            Atn3 = wPI / 2
        ElseIf wY < 0 Then  '270ÅÙ
            Atn3 = 3 * (wPI / 2)
        Else
            Atn3 = 0
        End If
        
        Exit Function
    End If
    
    If wY = 0 Then
        If wX > 0 Then      '90ÅÙ
            Atn3 = 0
        ElseIf wX < 0 Then  '180ÅÙ
            Atn3 = wPI
        Else
            Atn3 = 0
        End If
        
        Exit Function
    End If
    
    If wX > 0 And wY > 0 Then         '0¡Á90ÅÙ
        Atn3 = Atn(wY / wX)
    ElseIf wX < 0 And wY > 0 Then     '90¡Á180ÅÙ
        Atn3 = wPI + Atn(wY / vX)
    ElseIf wX < 0 And wY < 0 Then     '180¡Á270ÅÙ
        Atn3 = wPI + Atn(wY / wX)
    ElseIf wX > 0 And wY < 0 Then     '270¡Á360ÅÙ
        Atn3 = 2 * wPI + Atn(wY / wX)
    End If
    
End Function
|VB¡¦VBA | 21:38 | comments(0) | trackbacks(0) |
VB¥á¥â¡§ÆÈ¼«´Ø¿ô¡§»Í¼Î¸ÞÆþ

ËÜÆü¡¢»Å»ö¤Î¥×¥í¥°¥é¥ß¥ó¥°¤Ç·×»»·ë²Ì¤¬¤É¤¦¤·¤Æ¤âÈù̯¤ËÃͤ¬¤º¤ì¤Æ¤·¤Þ¤¦ÉÔ¶ñ¹ç¤¬¤¢¤Ã¤¿¤Î¤Ç¥á¥â¤·¤Æ¤ª¤­¤Þ¤¹¡£

»ä¤Ï¤º¤Ã¤ÈRound´Ø¿ô¤¬»Í¼Î¸ÞÆþ¤Î´Ø¿ô¤È»×¤Ã¤Æ¤¤¤Þ¤·¤¿¤¬¡¢¤É¤¦¤â°ã¤Ã¤¿¤Î¤Ç¤¹¤Í¡£

Ä´¤Ù¤Æ¤ß¤ë¤ÈRound´Ø¿ô¤Ï²¼µ­¤Î¤è¤¦¤Êư¤­¤ò¤¹¤ë¤è¤¦¤Ç¤¹¡£

Round(1.5)¡¡¢Í¡¡2
Round(2.5)¡¡¢Í¡¡2

¤³¤Î¤è¤¦¤Ë¤Ê¤ê¡¢Round´Ø¿ô¤ÏºÇ¤â¶á¤¤¶ö¿ô¤Ë´Ý¤á¤é¤ì¤ë¤è¤¦¤Ç¤¹¡£

¤³¤ì¤Ç¤Ï¤Á¤ç¤Ã¤Èº¤¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢ÆÈ¼«´Ø¿ô¤òºî¤ê¤Þ¤·¤¿¡£

Round´Ø¿ô¤ÈƱ¤¸¤è¤¦¤Ë¾®¿ô·å¤â»ØÄê¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£

'»Í¼Î¸ÞÆþ(Round¤Ï¶ö¿ô¤Ë¶á¤¤À°¿ô¤òÊÖ¤¹´Ø¿ô¤Î°Ù)
Public Function Round2(ByVal num As Double, Optional ByVal digit As Long = 0) As Double
'°ú¿ô¡§
'   num¡§»Í¼Î¸ÞÆþ¤¹¤ë¿ôÃÍ
'   digit¡§»Í¼Î¸ÞÆþ¤¹¤ë¾®¿ôÅÀ(¾Êά²Ä)
'ÌáÃÍ¡§
'   num¤ò»Í¼Î¸ÞÆþ¤·¤¿ÃÍ

    Dim tmpNum As Double
    
    tmpNum = num * 10 ^ digit
    
    If tmpNum > 0 Then
        Round2 = Fix(tmpNum + 0.5) / 10 ^ digit
    ElseIf tmpNum < 0 Then
        Round2 = -Fix(-tmpNum + 0.5) / 10 ^ digit
    End If
    
    Exit Function

End Function

¤½¤ó¤Ê¤ËÆñ¤·¤¤¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬²òÀ⤷¤Þ¤¹¤È¡¢»Í¼Î¸ÞÆþ¤·¤¿¤¤ÃͤË0.5¤ò­¤·¤ÆFix´Ø¿ô¤Ç¾®¿ôÅÀ°Ê²¼¤òÀÚ¤ê¼Î¤Æ¤Æ¤¤¤Þ¤¹¡£


¤³¤³¤Ç¤ÏÆÈ¼«´Ø¿ô¤òºî¤ê¤Þ¤·¤¿¤¬¡¢¼Â¤ÏFormat´Ø¿ô¤ò»È¤¨¤Ð»Í¼Î¸ÞÆþ¤Ï¤Ç¤­¤ë¤½¤¦¤Ç¤¹¡£

¤·¤«¤·Format´Ø¿ô¤Ç¤ÏWindowsXP¤ÎSP¤Ê¤·¤Ç¤ÏÀµ¾ï¤Ëưºî¤·¤Ê¤¤¤é¤·¤¤¤Î¤Ç»È¤¦µ¤¤Ë¤Ê¤ê¤Þ¤»¤ó¤Ç¤·¤¿¡£


¤Á¤Ê¤ß¤ËEXCEL´Ø¿ô¤ÎROUND¤Ï»Í¼Î¸ÞÆþ¤é¤·¤¤¤Ç¤¹¡£¡Äʶ¤é¤ï¤·¤¤¤Ê¤¢¡Ä

VB¤ÏExcelVBA¤«¤éÆþ¤Ã¤¿¤Î¤Ç;·×¤Ë´ª°ã¤¤¤·¤Æ¤¤¤Þ¤·¤¿¡£

Application.RoundUp¤È¤«Application.RoundDown¤Ã¤ÆVB´Ø¿ô¤¸¤ã¤Ê¤¯¤ÆExcel´Ø¿ô¤À¤Ã¤¿¤ó¤Ç¤¹¤Í¡£

»Í¼Î¸ÞÆþ¤ÏÎɤ¯»È¤¦¤Î¤Ç¤Á¤ã¤ó¤È³Ð¤¨¤Æ¤ª¤³¤¦¡Ä

|VB¡¦VBA | 22:20 | comments(0) | trackbacks(0) |
VB¥á¥â¡§ÆÈ¼«´Ø¿ô¡§¥Õ¥©¥ë¥À¤Î̵ͭ

Àè·î¡Ö¥Õ¥¡¥¤¥ë¤Î̵ͭ¡×¤ò¾Ò²ð¤·¤¿¤Î¤Ç¡Ö¥Õ¥©¥ë¥À¤Î̵ͭ¡×¤Ç¤¹¡£

²¼µ­¤Î¥³¡¼¥É¤Ç¤ÏGetAttr´Ø¿ô¤Ç»ØÄê¥Ñ¥¹¤Î°À­¤ò¼èÆÀ¤·¡¢¥Õ¥©¥ë¥À(vbDirectory)¤«¤É¤¦¤«È½ÃǤ·¤Þ¤¹¡£

¥Õ¥©¥ë¥À¤Ê¤éTrue¤òÊÖ¤·¡¢¥Õ¥¡¥¤¥ë¤ä¸ºß¤·¤Ê¤¤¥Ñ¥¹¤Ê¤éFalse¤òÊÖ¤·¤Þ¤¹¡£

'¥Õ¥©¥ë¥À¤Î̵ͭ¤ò³Îǧ
Public Function dirExist(ByVal dirPath As String) As Boolean
'°ú¿ô¡§
'   dirPath¡§¥Õ¥©¥ë¥À¤Î¥Õ¥ë¥Ñ¥¹
'ÌáÃÍ¡§
'  »ØÄê¥Ñ¥¹¤¬¥Õ¥©¥ë¥À¤Ê¤éTrue
'  ¥Õ¥¡¥¤¥ë¤ä¸ºß¤·¤Ê¤¤¥Ñ¥¹¤Ê¤é¤ÐFalse¤òÊÖ¤¹

On Error GoTo func_err
    
    If GetAttr(dirpath) = vbDirectory Then
    	isDirExist = True
    Else
    	isDirExist = False
    End If

    Exit Function
func_err:
    isDirExist = False
End Function

ÆÈ¼«¤Ç´Ø¿ô¤òºî¤ë¾ì¹ç¤Ï¡¢Îã³°½èÍý¤ò¤¦¤Þ¤¯»È¤¦¤³¤È¤¬¥Ý¥¤¥ó¥È¤Ç¤·¤ç¤¦¤«¡©

¤É¤¦¤âVB¤Ë¤Ê¤¤´Ø¿ô¤Ïºî¤ëºÝ¤ÏÎã³°½èÍý¤ò»È¤¦¤³¤È¤¬Â¿¤¤µ¤¤¬¤·¤Þ¤¹¡£


¤È¤³¤í¤ÇVB¤Ï»È¤¤¤¿¤¤µ¡Ç½¤¬¤È¤³¤í¤É¤³¤í­¤ê¤Ê¤¤µ¤¤¬¤·¤Þ¤¹¤Í¤¨¡Ä

.NET¤Î´Ø¿ô¤ò»È¤¨¤Ð¤½¤Î¤Þ¤Þ½èÍý¤Ç¤­¤ë¤«¤È»×¤¤¤Þ¤¹¤¬¡¢»ä¤Î¿¦¾ì¤ÏVB6¼çÂΤʤΤǼ«Ê¬¤Çºî¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£

|VB¡¦VBA | 21:53 | comments(0) | trackbacks(0) |
+ CALENDAR
 123456
78910111213
14151617181920
21222324252627
282930    
<< September 2008 >>
visitor
+ Search this site.
+ CATEGORIES
+ ¥Õ¥£¥í¤Î¼group
+ Ring
+ ARCHIVES
+ RECENT COMMENTS
+ SELECTED ENTRIES