(1)新建一个windows应用窗体,命名为web浏览器,并为改窗体添加相应的控件,效果图如下:
(2)为相应的控件添加相应的事件响应代码,完整代码如下:
using System; using System.Collections.Generic;
using System.ComponentModel; using System.Data;
using System.Drawing; using System.Text;
using System.Windows.Forms; using System.IO;
namespace Web浏览器
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Navigate(string address)
{
if (String.IsNullOrEmpty(address))
return;
if (address.Equals("about:blank")) return;
if (!address.StartsWith("http://")) address = "http://" + address;
try {
Cursor.Current = Cursors.WaitCursor; webBrowser1.Navigate(new Uri(address));
}
catch (System.UriFormatException)
{ return; }
finally { Cursor.Current = Cursors.Default; }
}
private void Form1_Load(object sender, EventArgs e)
{
toolStrip1.ImageList = imageList1;
tbBack.ImageIndex = 0;
tbForward.ImageIndex = 1;
tbRefrash.ImageIndex = 2;
tbHome.ImageIndex = 3;
}
private void comboBox1_KeyDown(object sender, KeyEventArgs e)
{ if (e.KeyCode == Keys.Enter) {
Navigate(comboBox1.Text);
comboBox1.Items.Add(comboBox1.Text);
}
}
private void tbBack_Click(object sender, EventArgs e)
{
webBrowser1.GoBack();
}
private void tbForward_Click(object sender, EventArgs e)
{
webBrowser1.GoForward();
}
private void tbRefrash_Click(object sender, EventArgs e)
{
i f (!webBrowser1.Url.Equals("about:blank"))
{
webBrowser1.Refresh();
}
}
private void tbHome_Click(object sender, EventArgs e)
{
webBrowser1.GoHome();
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
Navigate(comboBox1.Text);
}
private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.ShowDialog();
webBrowser1.DocumentText = File.ReadAllText(openFileDialog1.FileName,Encoding.GetEncodin("gb2312"));
}
private void 关闭ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void Form1_Resize(object sender, EventArgs e)
{
webBrowser1.Width = this.Width - 25;
webBrowser1.Height = this.Height - 130;
comboBox1.Width = this.Width - 55;
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
webBrowser1.GoSearch();
}
}
}
(3)程序说明:本程序只是实现一个功能简单的web浏览器效果,功能强大的web浏览器,正在制作中,目的给初学者一个,开抛砖引玉的作用。