2013-10-12 50 views
0

我想加载表单上的默认URL创建事件,我可以加载一个URL使用按钮单击,但我希望它加载应用程序加载时的URL,当我运行它的程序加载网址。加载默认url delphi

这里是我的代码:

unit launcher; 

interface 

uses 
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Imaging.pngimage, Vcl.ExtCtrls, 
    Vcl.StdCtrls, Vcl.OleCtrls, SHDocVw; 

type 
    TForm1 = class(TForm) 
    Image1: TImage; 
    Button1: TButton; 
    WebBrowser1: TWebBrowser; 
    procedure Button1Click(Sender: TObject); 
    procedure FormCreate(Sender: TObject); 

    private 
    { Private declarations } 
    public 
    { Public declarations } 
    end; 

var 
    Form1: TForm1; 

implementation 

{$R *.dfm} 

procedure TForm1.FormCreate(Sender: TObject); 
    begin 
Webbrowser1.Navigate('http://www.digitalxeon.net'); 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
close; 
end; 

end. 
+0

您的FormCreate事件是否运行?设置一个断点并查看它是否触发。据我所知,如果您在OnCreate处理程序中调用Navigate,则会加载该页面。为什么要标记XE2和XE3?这是什么? –

+0

我尝试在XE2和XE3上,它也是这样做的,不会在FormCreate上加载。 – LowFormat

+0

你没有回答我的所有问题 –

回答

3

什么你汇报是不是故事的全部。采取以下步骤:

  1. 创建一个新的VCL表单项目。
  2. TWebBrowser组件添加到自动生成的表单中。
  3. 双击表单以创建与OnCreate事件关联的名为FormCreateOnCreate事件处理程序。
  4. 将您的电话WebBrowser1.Navigate写入FormCreate方法的正文中。
  5. 运行您的应用程序并观察浏览器控件显示您的页面。

换句话说,应用程序中的其他内容阻止了这一点。也许OnCreate事件处理程序未分配给FormCreate。或者也许别的东西是错的。但是,您可以按照上面的步骤向自己证明从OnCreate工程导航。然后,所有的遗骸将诊断您的应用程序的不同之处。

底线是从OnCreate事件中调用Navigate就足以在窗体启动时显示网页。

+0

删除我手工编写的所有代码,并按照相同的形式执行它的步骤,并且它可以工作。 – LowFormat