求delphi中,程序界面嵌入网页的办法,网上有很多办法,试了不行。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求delphi中,程序界面嵌入网页的办法,网上有很多办法,试了不行。相关的知识,希望对你有一定的参考价值。

在网上找了下,很多人说,在internet面板组,里面的twebbrowers,插入就行了,还有代码。现在的问题是,能插入这个控件,但双击想输入代码时,弹出对话框,报错,意思是不能加入代码,这是怎么回事?用的是delphi7.

双击不行,只能在属性面板里找到相应的事件,在事件里写代码追问

您的QQ号?在事件里写代码 我不知道怎么写,我是入门者,如果帮我解决了问题,我把积分增加到50分作为感谢

追答

在界面的create事件里,写下面的代码
WebBrowser1.Navigate('http://www.baidu.com');
//里面替换你需要显示的网页,如果是一个html文件,就写上相对路径
//如要加载help.html这个网页文件,如果在程序的目录下,就写WebBrowser1.Navigate('help.html');

参考技术A 不用在webbrowser的事件里加代码。打开网页用 控件名.Navigate "网页地址" 就可以了追问

嗨,我试过了,但是不知道在哪里添加这个代码,控件框里找了没有。您的QQ号,我愿意送50分作为感谢

追答

。。。例如,你在TextBox1里面输入网址,点击Button1打开,那么你就在Button1的Click事件里添加上webbrowser控件名.Navigate(Textbox1.text)就可以了

追问

先谢谢你的答复,但我要做的是:在一个程序界面,插入网页,只需要一个小窗口显示出该网页,当该程序启动时,界面上就自动加载出网页,而不需要其它操作,也没有什么按钮,只需显示出网页就行了。如果可以,能远程协助吗?

追答

在窗体的OnCreate或者OnShow事件里写就可以了
悄悄告诉你··我的电脑没安装QQ=.=|

参考技术B 1

delphi 嵌入网页回车触发不了页面submit事件,如何解决?

此时焦点已经定位到查询按钮上了,查询界面是delphi中嵌套的jsp网页,查询是一个submit提交按钮,
<input name="Submit1" type="submit" id="Submit1" value="查询" class="btn3_mouseout">
但是任凭怎么按回车键,都触发不了这个查询事件,改如何处理,求大神啊????

这个问题其实非常的复杂。

因为Delphi在编写Webbrowser的时候,没有正确地编写快捷键的翻译程序。所以导致出现了这个问题。如果你想要解决这个问题的话。就必须首先改正Webbrowser的这个Bug.

解决方法如下:

    首先从你的Delphi源码目录中找出OleCtrls.pas文件。然后复制这个文件到你工程目录,并添加到你的工程中。

    修改你复制的OleCtrls.pas文件,首先从这个文件中找到TOleControl.WndProc函数,然后在这个函数中找到这一行:
    WinMsg.HWnd := Handle;
    将此行改为
    WinMsg.HWnd := GetFocus;

    因为Webbrowser可能存在焦点定位错误的问题。所以,同样需要复制SHDocVw.pas文件到你的目录,并添加到你的工程中。并在重载TWebbrowser的WndProc函数:

procedure TWebbrowser.WndProc(var Msg: TMessage);
begin
  try
    case Msg.Msg of
      WM_SETFOCUS:
      begin
        GetParentForm(Self).ActiveControl := nil; WinApi.Windows.SetFocus(Handle); Exit;
      end;
      CM_VISIBLECHANGED,WM_MOUSEACTIVATE:
        if TWinControl(Self).Visible then
          GetParentForm(Self).ActiveControl := nil;
    end;
  except

  end;
  inherited;
end;

另外,你如果使用的是Delphi XE2 以上的版本,OleCtrls单元的名称可能为Vcl.OleCtrls。你可能需要在ShdocVw单元中引用Forms、Messages与Controls单元。

参考技术A 捕获keydown、keypress、keyup的事件,处理当keyCode = 13的时候去调用一下就行,如果还是不会的话继续联系我jialiu830205@163.com

以上是关于求delphi中,程序界面嵌入网页的办法,网上有很多办法,试了不行。的主要内容,如果未能解决你的问题,请参考以下文章

delphi 嵌入网页回车触发不了页面submit事件,如何解决?

delphi做这样的网页该用啥思路呢

Delphi 窗体中怎样嵌入网页

Delphi,框架与表格。多文档界面是啥?

在我用delphi7.0编写简单网页浏览器时。运行时出现:(见截图),求高手解答!

C#程序嵌入Word窗口