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

Вниз

WebBrowser   Найти похожие ветки 

 
Lid ©   (2007-08-10 20:47) [0]

Всем доброго времени суток :)
Появился у меня такой вопросик, значит нужно поставить на форму TWebBrowser и TMemo, ну и кнопочку естественно :) и значит при открытии страницы какой-нибудь (это я знаю как сделать) должно автоматически происходить следующие действия:

1) Выделение текста в WebBrowser (Ctrl+A в IE)
2) Копирование этого текста (Ctrl+C в IE)
3) Вставление этого текста в Memo (Ctrl+V в IE)

Так вот собственно как сделать эти 3 пункта я непонимаю, пробовал сделать что-то типа  keybd_event("A", 0,0,0); и т.д  и мало того что не получается, так еще и вручную не получается скопировать тест, хотя страницу выделить автоматически получилось :)

Заранее спасибо :)


 
WASM   (2007-08-12 09:00) [1]

function WB_GetSelectedText(WB: TWebBrowser): string;
var
 Document: Variant;
 TR: IHTMLTxtRange;
begin
 Document:= WB.Document;
 if WB.Document <> nil then
   Result := Document.Selection.createRange.Text
 else
   Result := "";
end;

procedure WriteToClipboard(s: WideString);
var
   Handle: THandle;
   HandlePtr: Pointer;
   Size: Cardinal;
begin
 if OpenClipboard(Self.Handle) then
 begin
   EmptyClipboard;
   Size:=  SizeOf(s[1]) * (Length(s) + 1);
   Handle:= GlobalAlloc(GMEM_MOVEABLE + GMEM_DDESHARE, Size);
   if Handle = 0 then
     Exit;
   HandlePtr:= GlobalLock(Handle);
   Move((PWideChar(s))^, HandlePtr^, Size);
   GlobalUnLock(Handle);
   SetClipboardData(CF_UNICODETEXT, Handle);
   CloseClipboard();
 end;
end;

procedure TForm1.WebBrowser1NavigateComplete2(Sender: TObject;
 const pDisp: IDispatch; var URL: OleVariant);
begin
try
   WebBrowser1.ExecWB(OLECMDID_SELECTALL, OLECMDEXECOPT_PROMPTUSER);
 WriteToClipboard(WB_GetSelectedText(WebBrowser1));
 Memo1.PasteFromClipboard;
 except
 end;
end



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
2-1208843779
Mehiko
2008-04-22 09:56
2008.05.18
номер выбранного пункта Treeview


2-1203231941
DRAF
2008-02-17 10:05
2008.05.18
Полоса пкрутки


11-1187366554
Vladimir Kladov
2007-08-17 20:02
2008.05.18
Версия 2.78


2-1208345263
Fasco
2008-04-16 15:27
2008.05.18
помогите ...............


15-1205425151
Real
2008-03-13 19:19
2008.05.18
Странности с ShowModal