zoukankan      html  css  js  c++  java
  • C#实现一个功能简单的web浏览器

    (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浏览器,正在制作中,目的给初学者一个,开抛砖引玉的作用。 

  • 相关阅读:
    java中取两位小数 但不要四舍五入
    从字符串中提取数字 java正则表达式
    SQL实现 列转行(MySQL中)
    sql如何根据时间取出最新的数据记录
    动画 很精辟的
    week 与 strong区别 精辟的解释
    The executable was signed with invalid entitlements新设备run出现这个问题
    在iOS中创建静态库
    网址
    nginx单机1w并发设置
  • 原文地址:https://www.cnblogs.com/zwq194/p/1217023.html
Copyright © 2011-2022 走看看