Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.21;
Скачать: CL | DM;

Вниз

Отключить контексное меню в TWebBrowser-e   Найти похожие ветки 

 
DelphiN! ©   (2006-04-24 10:46) [0]

Пробовал в TranslateAccelerator-е обнулить все свойства lpMsg, но не помогает ...

function TranslateAccelerator(const lpMsg: PMsg;
 const pguidCmdGroup: PGUID; const nCmdID: Cardinal): HRESULT;
begin
 lpMsg.lParam := 0;
 lpMsg.wParam := 0;
 lpMsg.message := 0;
 lpMsg.pt.X := 0;
 lpMsg.pt.Y := 0;
end;


Как это меню отключить?


 
easy ©   (2006-04-24 11:11) [1]

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=355


 
DelphiN! ©   (2006-04-24 12:25) [2]


>  [1] easy ©   (24.04.06 11:11)


Через определение координат я уже дедал, но при каких то обстоятельствах пользователю все же удавалось установить фокус на TWebBrowser, и нажать кнопку "меню" на клавиатуре, что и вызывало контексное меню веббраузера.
Делал я так :



function GetComponentScreenPos(Comp: TWinControl): TPoint;
var
 Parent: TWinControl;
begin
 Result.X := Comp.Left;
 Result.Y := Comp.Top;
 Parent := Comp.Parent;
 while Parent <> nil do
 begin
   Result.X := Result.X+Parent.Left;
   Result.Y := Result.Y+Parent.Top;
   Parent := Parent.Parent;
 end;
end;

procedure WMMouseActivate(var Msg: TMessage);
var
 pCompPos,pComp2Pos,pScrPos: TPoint;
begin
 try
   pCompPos := GetComponentScreenPos(memNews);
   pComp2Pos := GetComponentScreenPos(WBBaner);
   GetCursorPos(pScrPos);
   inherited;
                    //513
     if (
        ( (pScrPos.X >= pCompPos.X)and(pScrPos.X <= (pCompPos.X+memNews.Width)) ) and
        ( (pScrPos.Y >= pCompPos.Y)and(pScrPos.Y <= (pCompPos.Y+memNews.Height)) ))
        or
        (
        ( (pScrPos.X >= pComp2Pos.X)and(pScrPos.X <= (pComp2Pos.X+WBBaner.Width)) ) and
        ( (pScrPos.Y >= pComp2Pos.Y)and(pScrPos.Y <= (pComp2Pos.Y+WBBaner.Height)) ) ) then
          Msg.Result:= MA_NOACTIVATEANDEAT


А есть ли другой способ отключить конексное меню в WebBrowser-e?


 
DelphiN! ©   (2006-04-24 12:46) [3]

Разобрался!

function WBBanerShowContextMenu(const dwID: Cardinal;
 const ppt: PPoint; const pcmdtReserved: IInterface;
 const pdispReserved: IDispatch): HRESULT;
begin
 Result := S_OK;
end;



Страницы: 1 вся ветка

Текущий архив: 2006.05.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
2-1146333722
Kano
2006-04-29 22:02
2006.05.21
Запросы в БД


2-1146338746
Галинка
2006-04-29 23:25
2006.05.21
Delphi 2005 &amp; ADO


15-1146057540
rolex2002
2006-04-26 17:19
2006.05.21
Как удалить системные точки восстановления?


6-1138319190
PVVladimir
2006-01-27 02:46
2006.05.21
Indi 9. Назначение прав на файл через FTP


15-1146150656
DillerXX
2006-04-27 19:10
2006.05.21
вы когда-нибудь pas2c рабочую видили?