Вниз
Скачать: CL | DM;

Компонент TWebBrowse   Найти похожие ветки 

← →
viperv   (2008-06-09 11:45) [0]

В проге используеться компонент TWebBrowse, проблема в том, что на любой загруженой странице выделяешь любой текст и при нажати на ctrl+c или ctrl+insert в буфер ничего непопадает... подскажите как решить проблему?


← →
sniknik ©   (2008-06-09 12:12) [1]

uses ... ActiveX,
....

TForm1 = class(TForm)
 ....
private
 FOleInPlaceActiveObject: IOleInPlaceActiveObject;
 SaveMessageHandler: TMessageEvent;
 procedure MyMessageHandler(var Msg: TMsg; var Handled: Boolean);
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
 SaveMessageHandler   := Application.OnMessage;
Application.OnMessage:= MyMessageHandler;
end;

procedure TForm1.FormDeactivate(Sender: TObject);
begin
 Application.OnMessage := SaveMessageHandler;
end;

procedure TMapForm.MyMessageHandler(var Msg: TMsg; var Handled: Boolean);
var
 iOIPAO: IOleInPlaceActiveObject;
 Dispatch: IDispatch;
begin
 if WebBrowser = nil then begin
   Handled:= False;
   Exit;
 end;

 Handled:= (IsDialogMessage(WebBrowser.Handle, Msg) = True);
 if (Handled) and (not WebBrowser.Busy) then begin

   if FOleInPlaceActiveObject = nil then begin
     Dispatch:= WebBrowser.Application;
     if Dispatch <> nil then begin
       Dispatch.QueryInterface(IOleInPlaceActiveObject, iOIPAO);
       if iOIPAO <> nil then
         FOleInPlaceActiveObject:= iOIPAO;
     end;
   end;

   if FOleInPlaceActiveObject <> nil then
     if not (((Msg.message = WM_KEYDOWN) or (Msg.message = WM_KEYUP)) and
        ((Msg.wParam = VK_BACK) or (Msg.wParam = VK_LEFT) or (Msg.wParam = VK_RIGHT))) then
       FOleInPlaceActiveObject.TranslateAccelerator(Msg);
 end;
end;

initialization
 OleInitialize(nil);
finalization
 OleUninitialize;
end.


вроде бы все.


← →
sniknik ©   (2008-06-09 12:15) [2]

считать TMapForm = TForm1, пропустил при выдергивании из проги.


← →
viperv   (2008-06-09 14:46) [3]

спс! буду пробовать...



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
2-1212657135
atomAltera
2008-06-05 13:12
2008.07.06
Самопроизвольная прокрутка в редакторе.


15-1211363788
hungry_Duck
2008-05-21 13:56
2008.07.06
построение триангуляционной сетки по опорным точкам


15-1211271685
kla$1
2008-05-20 12:21
2008.07.06
Microsoft SQL Server 2000


15-1211436673
Caks
2008-05-22 10:11
2008.07.06
конвертация из basic в delphi


15-1211353071
идфсльфт
2008-05-21 10:57
2008.07.06
Ну и где же эти глубины?




   Наверх