关于WebBrowser的问题(175分,全部家当了)(175分)

  • 主题发起人 主题发起人 我是1
  • 开始时间 开始时间

我是1

Unregistered / Unconfirmed
GUEST, unregistred user!
1.如何确定窗口内当前的焦点是否在WebBrowser上?
2。如何判段WebBrowser当前是否存在选中的文本?
即相当于Memo控件中的SelLength属性是否大于0,换到WebBrowser中该怎么写?
 
在C++ builder5中webbrowser还有不能用Ctrl+C和Ctrl+V的问题,
呵呵, 谁能解决, 我给300分
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1304754

今天竟有人说Borland公司的产品兼容性不行,就因为这个原因, 气死我也!
我那个公司净是些VC迷, 今天我遇到一个一个科长, 它竟说
Borland的产品很差, 他居然说VB很不错, 全国有很多公司用VB写程序

我说VB是玩具, 估计也把他气得半死, 他竟用这个玩具写了两年的程序, 呵呵
 
2.
var
lsSelText: string;
lsDoc: IHtmlDocument2;
lrSel: IHtmlTxtRange;
begin
lsDoc := WebBrowser1.Document as IHtmlDocument2;
lrSel := lsDoc.Selection.CreateRange as IHtmlTxtRange;
lsSelText := lrSel.Text;
if lsNewTitle <> '' then ......;
end;
 
1.
if IHTMLWindow4(WebBrowser1.Document).hasfocus then ......
 
to kthy:
IHTMLWindow4 是什么?可以把这两个例子说详细点吗?
 
IHTMLWindow4 是从mshtml.dll导入的COM接口,需要IE5.5以上版本。如果delphi系统中
已经包含该导入的单元,应该删除它,从新导入。
 
我是IE6,编译时还是通不过啊~
我已经在user里加入mshtml了~
 
WebBrowser是否获得焦点好象和活动控件是两回事.
即使在其中选中文本,但它不一定是活动控件.
然而可以用 Tab 键使之成为活动控件.
可能和它是非编辑控件有关.
这是以下定时器监视的情况:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
edit1.text:=activecontrol.ClassName
end;


uses ...,mshtml

procedure TForm1.Button1Click(Sender: TObject);
var IHtmlWin:IHTMLWindow2;
IHtmlDoc:IHtmlDocument2;
begin
IHtmlDoc:= WebBrowser1.Document as IHtmlDocument2 ;
showmessage(ihtmldoc.selection.type_);
// 'Text' 时说明有选中文本.
end;

 
呵呵!DELPHI对ACTIVE的封装没有VC++或是VB好,这是事实。

function SelectNone:Boolean;
var
lsDoc: IHtmlDocument2;
begin
lsDoc := WebBrowser1.Document as IHtmlDocument2;
result := lsDoc.Selection.Type_='none';
end;
 
后退
顶部