Questo codice qui sotto non è la chiusura di una scheda in Internet Explorer 8. Se ho posto di comando WM_CLOSE a WND si chiude Internet Explorer, ma voglio chiudere la scheda corrente non l'intero 'ieframe'. FindWindowEX (Wnd, 0, 'Frame Tab', nil) dovrebbe ricomporre un handle per ie frame? Se sì, perché non chiude la scheda corrente in Internet Explorer?come chiudere le schede IE8
var
Wnd, WndChild : hwnd;
begin
Wnd := FindWindow('IEFrame', nil);
WndChild := FindWindowEX(Wnd, 0, 'Frame Tab', nil);
postmessage(WndChild, wm_close, 0, 0);
end;
Non sono sicuro che questo sia possibile. –
@George: Beh, in teoria * * dovrebbe essere possibile, se IE8 sta creando finestre effettivi per le schede, che sembra probabile. Il trucco sta nel trovare la maniglia della finestra giusta, che può essere davvero molto difficile - o addirittura impossibile, come hai detto tu. :-) –