怎样捕捉ie的事件(200分)

  • 主题发起人 主题发起人 glasses
  • 开始时间 开始时间
G

glasses

Unregistered / Unconfirmed
GUEST, unregistred user!
1.我希望在IE一个特定的按钮被点击时,使本机一个程序有响应。
2.或者在页面的脚本中有无办法控制ie的工具栏的显示
我做了一个ie工具栏,希望在访问某页时,点击页面上的特定按钮,
决定这个工具栏是否显示。
 
没有人会吗?我还有一千分,只要你要,我都可以给你的
 
自己写一个BHO(Browser Help Object)
 
详细点儿,好吗?
 
200分就够了:)
webBrowserNewWindow2可以做到.
程序可以参见
http://61.132.118.185:8080/dispdocnew.php?t=&id=1732
以下是我程序的一段代码
procedure TFrmMain.WebBrowserNewWindow2(Sender: TObject;
var ppDisp: IDispatch
var Cancel: WordBool);
var
ObjId: string;
len, i: integer;
begin
if WebBrowser.Document <> nil then
begin
len :=WebBrowser.OleObject.Document.links.Length;
{ if len=0 then //flash的目录跳转
begin
cancel:=true;
webBrowser.Navigate(appPath+'resource/index_1.htm')

exit;
end;
}//这段代码是我控制flash跳转问题的
ObjId :=WebBrowser.OleObject.Document.links.item(i,varEmpty).ID;
if ObjId='' then begin
cancel:=true;
webBrowser.Navigate(sNewUrl);
end else begin
for i:=0 to len-1 do
begin
ObjId :=WebBrowser.OleObject.Document.links.item(i,varEmpty).ID;
// showMessage(LowerCase(ObjId)+' ??? '+LowerCase(sNewUrl));
if LowerCase(ObjId)=LowerCase(_RightStr(sNewUrl,length(ObjId)-1)+'/') then
begin
Cancel :=True;
[red]if LowerCase(ObjId)=LowerCase('执行程序.htm/') then [/red]
//接口,把网页一个连接写成'执行程序.htm/'形式即可,target='_blank'
//按钮的话把让form提交到'执行程序.htm/'即可
begin
Button----------1.onclick(self);
//这里就是你需要执行的程序
end;
if LowerCase(ObjId)=LowerCase('options.htm/') then //&amp;Eacute;è&amp;Ouml;&amp;Atilde;
begin
N15CLICK(SELF);
end;
end;
end;
end;
end;
end;
 
接受答案了.
 
后退
顶部