200分求助c++builder高手 用ActiveForm如何获得IE的IWebbrowser2接口 (200分)

X

x6139

Unregistered / Unconfirmed
GUEST, unregistred user!
问题我已解决!!!
 
在Htm文件中加上下列语句:
Width=100%
Height=100%
align=center
 
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ActiveX, AxCtrls, ActiveFormProj1_TLB, StdVcl, StdCtrls, OleCtrls,
SHDocVw;
var
SP:IServiceProvider;
IE:IWebbrowser2;
procedure TActiveFormX.Button1Click(Sender: TObject);
begin
SP := ActiveFormControl.ClientSite as IServiceProvider;
SP.QueryService(IWebbrowserApp, IWebbrowser2, IE);
IE.FullScreen:=true;
end;
procedure TActiveFormX.Button2Click(Sender: TObject);
begin
IE.Fullscreen:=false;
IE.MenuBar:=true;
IE.ToolBar:=1;
end;
 
to:bubble
您的指教我实验过了,结果是将IE变成了全屏。虽然,不太适合我的问题,但仍然让我有所见识。
仍敬上50分。

补充我的问题:ActiveForm控件并没有占満整个网页,网页上还有其它HTM内容。
我想将此控件全屏显示,并可恢复网页的正常显示。
敬请各位进一步指教!!!
还剩150分敬送大家。
 
to:bubble
对不起!我不知道200分的问题,不能单送50分。我想给您加50分,可系统不允许!我非常报谦!!!
如果,再过几天还没有满意答案的话,我将200分全部送上!!!
 
不太情楚你到底要什么样的效果? 如果页面上有其他元素的话, activeXform肯定不能占满整个IE浏览器的.
如果你要让这个ActiveXform一下子占满屏幕, 然后还可以恢复. 建议把activeForm放在一个layer中.
调整为全屏(这里指的是真个ie浏览器对吧) .
 
to XWigns:
这两天我进一步弄清了我的问题,问题的实质是:将现有页上的ACTIVEFORM控件全屏显示,
前题是不需要更换网页或者将此控件定制为全屏大小。
我初步找到了解决方法,是用此ACTIVEFORM控件弹出一个占満整个桌面的顶级窗口,在此窗口上
显示想要的内容。
不知各位还有什么更好的方法。

 
把activeForm放在一个layer中.调整为全屏
 
如果像你说的是用此ACTIVEFORM控件弹出一个占満整个桌面的顶级窗口,
觉得也满好.俺也这么干过.:)
放在layer里面没试过,估计配合全屏效果会更好.
 
懂你的意思了. )

弹出满屏的窗体比较好. 不用layer.
 
to bubble:
还得向您请教:用ACTIVEFORM控件将IE调整为全屏的C++BUILDER实现方法。
在CB中我没有找到ActiveFormControl.ClientSite 这个属性。由于项目的时间太紧,
我没有进一步研究这个问题,但我觉得这个方法比较有用。
另:200分赠送不变。
 
to bubble:
分数已送上!
 
能给个例子么
我也是弹出个窗口,可是 老是被什么东西挡住
如果我这个activex 是w=300 h=300那么就会有个这么大的窗口挡在前面
active已经被放到全屏了
什么办 ,谢谢

zhangning@tycosun.com
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
顶部