Ctrl+c, Ctrl+v 처리
// 주소 에디트 박스 핸들값으로 오는건 break를 걸어서 Dialog로 메시지를 보내고 아닌것은...
// SendAcceleratorToWeb함수를 이용해서 웹페이지로 보냄
// 힘들었음 이거 알아낸다고 ㅠ
// CEdit *hWndUrlAdress;
BOOL CNBrowserSetupCtrl::PreTranslateMessage(MSG* pMsg)
{
// TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다.
switch (pMsg->message)
{
case WM_KEYDOWN:
if(GetKeyState(VK_CONTROL))
{
// 67 = 'c' , 86 = 'v'
if(pMsg->wParam == 67)
{
hWndUrlAdress = (CEdit*)NitsViewDlg.GetDlgItem(IDC_ADC);
MyOutputDebugString("Ctrl Message [%d],[%d],[%d],[%d],[%d]",hWndUrlAdress->m_hWnd,pMsg->hwnd,pMsg->lParam,pMsg->message,pMsg->wParam);
if(!(hWndUrlAdress->m_hWnd == pMsg->hwnd))
return SendAcceleratorToWeb(pMsg);
break;
}
if(pMsg->wParam == 86)
{
hWndUrlAdress = (CEdit*)NitsViewDlg.GetDlgItem(IDC_ADC);
MyOutputDebugString("Ctrl Message [%d],[%d],[%d],[%d],[%d]",hWndUrlAdress->m_hWnd,pMsg->hwnd,pMsg->lParam,pMsg->message,pMsg->wParam);
if(!(hWndUrlAdress->m_hWnd == pMsg->hwnd))
return SendAcceleratorToWeb(pMsg);
break;
}
}
case WM_KEYUP:
switch (pMsg->wParam)
{
case VK_TAB:
case VK_RETURN:
MyOutputDebugString("VK_TABffffffffffff");
hWndUrlAdress = (CEdit*)NitsViewDlg.GetDlgItem(IDC_ADC);
MyOutputDebugString("Ctrl Message [%d],[%d],[%d],[%d],[%d]",hWndUrlAdress->m_hWnd,pMsg->hwnd,pMsg->lParam,pMsg->message,pMsg->wParam);
// urlAdress의 핸들값이 아니면 웹으로 키보스 마우스를 보내고
// 아니면 urlAdress핸들로 키보스 메시지를 보낸다
if(!(hWndUrlAdress->m_hWnd == pMsg->hwnd))
return SendAcceleratorToWeb(pMsg);
break;
}
break;
}
return COleControl::PreTranslateMessage(pMsg);
}