找回密码
 立即注册
查看: 1482|回复: 0

一个很简单的web浏览器的原代码

[复制链接]

6782

主题

8

回帖

2万

积分

管理员

积分
21777
发表于 2019-5-20 21:37:58 | 显示全部楼层 |阅读模式
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ToolWin, ComCtrls, ImgList, StdCtrls, OleCtrls, SHDocVw,
ExtCtrls;

type
TfmMainForm = class(TForm)
   MainMenu1: TMainMenu;
   miFile: TMenuItem;
   miFileOpen: TMenuItem;
   miSaveAs: TMenuItem;
   N1: TMenuItem;
   miPrint: TMenuItem;
   N2: TMenuItem;
   miClose: TMenuItem;
   miEdit: TMenuItem;
   miCut: TMenuItem;
   miCopy: TMenuItem;
   miPaste: TMenuItem;
   N3: TMenuItem;
   miSelectAll: TMenuItem;
   N4: TMenuItem;
   miFind: TMenuItem;
   miView: TMenuItem;
   miViewToolBar: TMenuItem;
   miViewStandarButton: TMenuItem;
   miViewAddressBar: TMenuItem;
   miViewStatusBar: TMenuItem;
   N5: TMenuItem;
   miBack: TMenuItem;
   miForward: TMenuItem;
   miBlank: TMenuItem;
   P1: TMenuItem;
   miRefresh: TMenuItem;
   N6: TMenuItem;
   miHelp: TMenuItem;
   miAbout: TMenuItem;
   tbMainMenu: TToolBar;
   ImageListNormal: TImageList;
   ImageListHot: TImageList;
   tbCmdButton: TToolBar;
   tButtonBack: TToolButton;
   tButtonForward: TToolButton;
   tButtonStop: TToolButton;
   tButtonRefresh: TToolButton;
   tButtonHome: TToolButton;
   cmBoxAdress: TComboBox;
   CoolBar1: TCoolBar;
   StatusBar1: TStatusBar;
   miHome: TMenuItem;
   Panel1: TPanel;
   WebBrowser1: TWebBrowser;
   PopupMenu1: TPopupMenu;
   miLabelBottom: TMenuItem;
   miLabelRigh: TMenuItem;
   miNoLabel: TMenuItem;
   OpenDialog1: TOpenDialog;
   procedure FormCreate(Sender: TObject);
   procedure miLabelBottomClick(Sender: TObject);
   procedure miLabelRighClick(Sender: TObject);
   procedure miNoLabelClick(Sender: TObject);
   procedure tButtonBackClick(Sender: TObject);
   procedure tButtonForwardClick(Sender: TObject);
   procedure tButtonStopClick(Sender: TObject);
   procedure tButtonRefreshClick(Sender: TObject);
   procedure tButtonHomeClick(Sender: TObject);
   procedure miFileOpenClick(Sender: TObject);
   procedure miSaveAsClick(Sender: TObject);
   procedure miCloseClick(Sender: TObject);
   procedure miViewStandarButtonClick(Sender: TObject);
   procedure miViewAddressBarClick(Sender: TObject);
   procedure miAboutClick(Sender: TObject);
   procedure cmBoxAdressKeyPress(Sender: TObject; var Key: Char);
private
   { Private declarations }
public
   procedure MyShowHint(Sender: Tobject);
   { Public declarations }
end;

var
fmMainForm: TfmMainForm;

implementation
uses unit2;

{$R *.dfm}

procedure TfmMainForm.MyShowHint(Sender: Tobject);
begin
StatusBar1.SimplePanel:=true;
statusBar1.SimpleText:=Application.Hint;
end;

procedure TfmMainForm.FormCreate(Sender: TObject);
begin
Application.OnHint:=myshowhint;
webbrowser1.Navigate('about:blank');
end;

procedure TfmMainForm.miLabelBottomClick(Sender: TObject);
begin
tbcmdbutton.Align:=alnone;
tbcmdbutton.ShowCaptions:=true;
tbcmdbutton.List:=false;
tbcmdbutton.Align:=alclient;
milabelbottom.Checked:=true;
end;

procedure TfmMainForm.miLabelRighClick(Sender: TObject);
begin
tbcmdbutton.Align:=alnone;
tbcmdbutton.ShowCaptions:=true;
tbcmdbutton.List:=true;
tbcmdbutton.Align:=alclient;
milabelrigh.checked:=true;
end;

procedure TfmMainForm.miNoLabelClick(Sender: TObject);
begin
tbcmdbutton.Align:=alnone;
tbcmdbutton.List:=true;
tbcmdbutton.ShowCaptions:=false;
tbcmdbutton.Align:=alclient;
milabelrigh.Checked:=true;
end;

procedure TfmMainForm.tButtonBackClick(Sender: TObject);
begin
webbrowser1.GoBack;
end;

procedure TfmMainForm.tButtonForwardClick(Sender: TObject);
begin
webbrowser1.GoForward;
end;

procedure TfmMainForm.tButtonStopClick(Sender: TObject);
begin
webbrowser1.Stop;
end;

procedure TfmMainForm.tButtonRefreshClick(Sender: TObject);
begin
webbrowser1.Refresh;
end;

procedure TfmMainForm.tButtonHomeClick(Sender: TObject);
begin
webbrowser1.GoHome;
end;

procedure TfmMainForm.miFileOpenClick(Sender: TObject);
begin
if opendialog1.Execute then
   webbrowser1.Navigate(opendialog1.filename);
end;

procedure TfmMainForm.miSaveAsClick(Sender: TObject);
begin
webbrowser1.ExecWB(olecmdid_saveas,2);
end;

procedure TfmMainForm.miCloseClick(Sender: TObject);
begin
fmmainform.Close;
end;

procedure TfmMainForm.miViewStandarButtonClick(Sender: TObject);
begin
miviewstandarbutton.Checked:=not miviewstandarbutton.Checked;
tbcmdbutton.Visible:=miviewstandarbutton.Checked;
end;

procedure TfmMainForm.miViewAddressBarClick(Sender: TObject);
begin
miviewaddressbar.Checked:=not miviewaddressbar.Checked;
coolbar1.Bands[2].Visible:=miviewstatusbar.Checked;
end;

procedure TfmMainForm.miAboutClick(Sender: TObject);
begin
fmabout.ShowModal;
end;

procedure TfmMainForm.cmBoxAdressKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
webbrowser1.Navigate(cmboxadress.Text);
end;
end.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表