为什么没人解答,是DELPHI解决不了,还是大家觉得太简单? (150分)

  • 主题发起人 主题发起人 我是天边的一片云
  • 开始时间 开始时间

我是天边的一片云

Unregistered / Unconfirmed
GUEST, unregistred user!
如何在AVTIVEXFORM中按下一个按钮后,到另一个网页,并关闭该ACTIVEXFORM.
说详细点:用户登录后,进入一个主页,该用户登录是用ACTIVEXFORM做的
 
用shellexecute
在把form close
随便说说,不大明白
 
打开别一个网页用shellexecute或自己写个事件让其触发 在javascript中可以获得所触发的事件后 再打开别一个网页
关闭activeform用
var
WinHanlde : HWnd;
begin
WinHanlde := FindWIndow( 'IEFrame', nil );
DestroyWindow(WinHanlde);
end

将整个网页关毕
 
楼上的方法可以一试!
 
to hstod
shellexecute怎么用?
在ACTIVEXFORM里写,
 
用下面的方法
var
Window: IHTMLWindow2;
begin
with ActiveFormControl.ClientSite as IServiceProvider do
begin
OleCheck(QueryService(IHTMLWindow2,IID_IHTMLWindow2,Window));
Window.navigate('http://www.delphibbs.com');
end;
end;
 
不知楼主想要的是什么,楼上的人写了这么多,总不会说没有用吧。
其实你自己也知道你想要的东西很简单。我也写两句吧。
①新开浏览器窗口:ShellExecute(handle,nil,pchar('你想要写的网址'),nil,nil,sw_shownormal);
②关闭当前浏览器:Halt;
不知你还有别的什么要求?
 
to 野蛮人
我用了shellexecute();出现了undeclared indentifier'shellexecute'
 
Uses ShellApi;
ShellExecute(this->m_hWnd,"open",
"http://www.google.com","","", SW_SHOW );
 
谢谢各位
 
>> 我用了shellexecute();出现了undeclared indentifier'shellexecute'
uses ShellAPI;
但ShellExecute不是解决问题的最正确的方法,而且有很多局限性,比如没法Post到URL。。。
还有一个楼主说的 并关闭该ACTIVEXFORM ,转到另一个页面就行了,有必要象楼上几位说的那样把IE都给强行结束吗?
比较正确的方法,ActiveForm中可以获得很多接口,用这样接口操作不是方便得多吗?下面例出多种方法:
var
Browser: IWebBrowser2;
Window: IHTMLWindow2;
Document: IHTMLDocument2;
begin
with ActiveFormControl.ClientSite as IServiceProvider do
begin
OleCheck(QueryService(IWebbrowserApp,IWebbrowser2,Browser));
OleCheck(QueryService(IHTMLWindow2,IID_IHTMLWindow2,Window));
Window.navigate('http://www.delphibbs.com');
//Window.Open(...)
//和 js 中 window.open(...) 一样的操作
//Browser.Navigate2(...)
//这里参数很多,可以Post等,具体搜一下以前资料,不多说了
//Browser.quit
//关闭浏览器
//Document:=Window.document;
//Document.url:='http://www.delphibbs.com';
//还有很多。。。
end;
end;
 
唉!对不起那些没分到分的,我点错了
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部