Здравствуйте, Rcorp, Вы писали:
R>Очень нужно, чтобы по правой клавише не высвечивалось стандартное меню IE
http://www.rsdn.ru/article/inet/iemenu.xmlАвтор(ы): Тимофей Чадов
Дата: 24.08.2001
Здравствуйте, Rcorp, Вы писали:
R>Очень нужно, чтобы по правой клавише не высвечивалось стандартное меню IE
R>(назад, вперед,......).
R>Как это сделать?
R>Может, есть примеры?
Я перехватил процедуру обработки оконных сообщений у браузера — так писанины меньше... :)
WNDPROC defWndProc_WebBrowser = NULL;
LRESULT CALLBACK newWndProc_WebBrowser(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) {
switch (msg) {
case WM_MOUSEACTIVATE:
if ((UINT) HIWORD(lParam) == 0x0204) {
// убираю popup-меню по правому клику
return MA_NOACTIVATEANDEAT;
}
break;
}
return CallWindowProc((WNDPROC)defWndProc_WebBrowser, hwnd, msg, wParam, lParam);
}
void CMyView::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CMyView)
DDX_Control(pDX, IDC_EXPLORER1, m_Browser);
//}}AFX_DATA_MAP
// перехватываю процедуру обработки сообщений для браузера
defWndProc_WebBrowser = (WNDPROC)SetWindowLong(m_Browser.m_hWnd, GWL_WNDPROC, (LONG)newWndProc_WebBrowser);
}