关于IE Twebbrowser的问题??

Nuke 2000-02-02 12:49:00
form上有Mainmenu,一个button,一个pagecontrol
用动态创建twebbrowser,每按下button一次新建一个pagecontrol,
并在tabcontrol上新建一个twebbrowser.

现在问题是当我在twebbrowser里输入内容时,如果输入字母为菜单上的
hotchar,例如有一个菜单项为FILE,打开热键为Alt+F,这时如果你在
twebbrowser的页面中的编辑栏里输入字母'F',则菜单被打开,而编辑栏
中并没有出现'F'.

这是动态create twebbrowser的问题,如果在设计时就把twebbrowser
放到form上去,则没有此问题。

下面是代码:

procedure TForm1.Button1Click(Sender: TObject);
var temp:ttabsheet;
ri:tWEBBROWSER;
begin
temp:=ttabsheet.create(self);
ri:=tWEBBROWSER.Create(self);
temp.PageControl:=pc;
temp.InsertControl(ri);
ri.Align:=alClient;;
RI.Navigate(‘http://www.yahoo.com');

end;

...全文
245 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dana 2001-06-01
  • 打赏
  • 举报
回复
使用webbrowser控件内存会越来越少吗?为何我会?
有何解决方案?
skt642 2001-05-31
  • 打赏
  • 举报
回复
44960关注!
Kingron 2001-05-14
  • 打赏
  • 举报
回复
提问者:如要继续讨论请定期提前贴子,如不想讨论请结束贴子。
SimonDW 2000-02-09
  • 打赏
  • 举报
回复
我用delphi3这么做,没问题。
建议检查一下硬件,并杀毒。
?是不是该用
var a,b,c,d:olevariant;
navigate('http://adsfsad.com',a,b,c,d);
Tommy Chang 2000-02-02
  • 打赏
  • 举报
回复
在ri.setfocus真的有效吗,你最好用tab,enter键看当前焦点是否在webbrowser中,而且据我所知,webbrowser下还有两层窗口,我试过几个方法设置焦点都失败了
Nuke 2000-02-02
  • 打赏
  • 举报
回复
呵呵,鼠标不但在编辑框里,而且我可以输入除了菜单热键以外的其他任何字符。
但一输入热键字母菜单就会自动打开!

以下是完全的代码:
可以看到,连setfocus都没作用!
why??

可能您在design time 就把twebbrowser放到tabsheet上去了吧
我一开始form上就没有任何webbrowser,完全动态创建

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, Menus, ToolWin, MenuBar, OleCtrls, SHDocVw_TLB,
Buttons;

type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
f1: TMenuItem;
editE1: TMenuItem;
NewN1: TMenuItem;
New1: TMenuItem;
pc: TPageControl;
Button1: TButton;
MenuBar1: TMenuBar;
BitBtn1: TBitBtn;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
ri:tWEBBROWSER;
implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var temp:ttabsheet;
begin
temp:=ttabsheet.create(self);
ri:=tWEBBROWSER.Create(self);
temp.PageControl:=pc;
temp.InsertControl(ri);
ri.Align:=alClient;;
RI.Navigate('http://www.yahoo.com');

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ri.free;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
ri.SetFocus;
end;

end.
929 2000-02-02
  • 打赏
  • 举报
回复
检查一下你的程序运行后,当生成TWEBBROWER后鼠标的位置,如果当前鼠标焦点在菜单上则按F出现菜单。我用DELPHI5做了你这个程序,当把鼠标点到网页内的编辑框后,输入菜单的热键没有出现问题。
WebBrowserWebBrowser编程技术包括Delphi、C#、VC++、VB等编程资料的集合,其中的 实例大多以Delphi为示例讲解,Delphi7 IDE开发环境。 IE_WebBrowser编程技巧 修改WebBrowser的header信息? Delphi查看WebBrowser提交之前的数据头 用TWebBrowser组件在DELPHI中POST数据和取得网页源文件 在 WebBrowser 中直接载入流,不通过文件 判断下载网页成功 WebBrowser 失去焦点问题的解决 添加到收藏夹和整理收藏夹 使WebBrowser获得焦点 提取网页中所有链接 Web字体大小 Web命令操作 WebBrowser Navigate 中的 参数 EmptyParam Web控件不缓存网页,也不从缓存中读取 禁止WebBrowser复制 CTRL+C 在WebBrowser窗口上模拟KeyBd_Event 在使用WebBrowser控件,先要 初始化和结束程序后要终止化(Initialization & Finalization) 自定义浏览器上下文菜单 自定义浏览器 C#中调用WebBrowser查看源文件的功能 ----------------------------------- WebBrowser与MSHTML 直接在WebBrowser中写HTML字符串 在webbrowser中查找字符串并定位 把图片拷贝进剪贴板 IHTMLDocument的ExecCommand 处理事件的Internet Explorer中的DOM 禁止WebBrowser右键弹出菜单 禁止TWebBrowser图像显示 访问HTML的DOM不使用WebBrowser 如何填写空白(about:blank)页的表单 屏蔽WebBrowser的Javascript 创建运行时的IHTMLDocument而不在WebBrowser内 HOOK Webbrowser 替换WebBrowser的窗口过程 Microsoft.XMLHttp的属性和方法的简介及使用 ------------------------ IE相关的 清空IE缓存 单独删除某一URL的缓存 清空历记录 读取IE历史记录 防止脚本关闭WebBrowser 连接是否有效 InternetCheckConnection res协议可以使浏览器显示储存在资源中HTML 往IE中嵌入工具条 阻断弹出式广告的BHO 自动填表的IE面板插件 使用Delphi开发IE按钮扩展 使用Delphi开发IE右键菜单扩展 IE异步可插入协议扩展 Delphi开发IE下载扩展 创建3721样式的Google搜索扩展 HTML代码过滤技术 GetDefaultBrowser 得到的HTML代码的IE窗口 下载网址wininet ------------------------------- 注意啦,需要HTF 阅读器:http://sites.google.com/site/htfresource/home

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧