![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите закрыть вкладку браузера Opera [D7, WinXP]
rider_j © (2008-06-03 13:51:00)Здравствуйте, помогите закрыть вкладку браузера Opera. Нахожу хендл окна оперы, пробую CloseWindow а она просто сворачивается и всё :(
function closewn (Wd: HWnd; Param: LongInt): Boolean; stdcall;
var
nm:array [0..255] of char;
s,t:string;
i:integer;
f:boolean;
begin
GetWindowText(wd,nm,255);
s:=string(nm);
if s<>'' then begin
f:=false;
i:=1;
t:=' - Opera';
while i<=length(s) do begin
if t=copy(s,i,length(t)) then f:=true;
i:=i+1;
end;
// если нашли оперу
if f=true then closewindow(wd);
end;
closewn := TRUE;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
EnumWindows(@closewn, 0); // ищем оперу, чтобы закрыть текущую вкладку
end;
DVM (2008-06-16 22:24:00) [1]С дочерними окнами оперы не все так просто. Там не обычные стандартные контролы.
Rouse_ (2008-06-16 17:54:00) [2]
> пробую CloseWindow а она просто сворачивается и всё :(
А какую реакцию ты ожидаешь от выполнения CloseWindow?
multiflex (2008-06-16 17:40:00) [3]не надо дескриптор вкладки. посылай в окно оперы сообщение о нажатии сочетания клавиш закрытия вкладки (CRTL+W), загугли Keyboard Events - первые 3 ссылки твои.
TForumHelp (2008-06-03 16:28:00) [4]значит при обработке опера сворачивает вкладку.
попробуйSendMessage(wd, WM_CLOSE, 0, 0);илиPostMessage
да и вообще сначала надо в опере вкладку найти и взять ее хэндл.