为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Web浏览器

2012-03-04 30页 doc 389KB 134阅读

用户头像

is_929155

暂无简介

举报
Web浏览器 CHANGZHOU INSTITUTE OF TECHNOLOGY 计算机信息工程学院 课 程 设 计 说 明 书 课程名称: 程序设计实训    专 业: 软件工程 班 级: 08 软件 学 号: 08030310 08030312 姓 名: 李 想 林 明 2011年 1 月 提纲 1. 项...
Web浏览器
CHANGZHOU INSTITUTE OF TECHNOLOGY 计算机信息学院 课 程 设 计 说 明 书 课程名称: 程序设计实训    专 业: 软件工程 班 级: 08 软件 学 号: 08030310 08030312 姓 名: 李 想 林 明 2011年 1 月 提纲 1. 项目背景 2. 目的、意义和研究现状分析 3. 主要解决的问 4. 小组成员及分工情况 5. 主要开发环境与工具、技术路线和解决 6. 系统分析与设计(包括数据库、界面设计、主要模块算法程序图(或N-S图)) 7. 系统编码 8. 调试与测试 9. 系统现状分析与总结(包括组长对整个小组评价及成员评价) 10. 实训 11. 参考文献 1. 项目背景 随着时代的发展,计算机已经不是前些年仅仅是少数人才可以运用/使用的局面,取而代之的是许许多多的家庭有了计算机。计算机的普遍也带动了网络的不断发展,网页浏览器作为上网的所必需的软件之一,已经得到了广泛地应用。在IE独霸一方的背景下,国内外各式各样的浏览器软件都如雨后春笋般孕育而生。网页浏览器的开发与应用更是成为了计算机领域近年来的一大热点。 本文围绕着浏览器的编程与开发,讲述了在Visual Basic .NET中进行浏览器开发的一些技术和笔者的自己的心得,着重讲解了课程设计中所实现的一个Web浏览器程序。 2. 目的、意义和研究现状分析 2.1.目的和意义 随着互联网在世界范围的广泛应用,网络浏览器便是信息交流中必不可少的工具。本题目要求同学在熟练掌握VB.NET下有关网络编程理论的基础上,实现一个能够浏览网页的浏览器。希望通过制作简易Web浏览器来掌握VB.NET有关内容的使用方法 2.2. 研究现状分析 在IE独霸一方的背景下,国内外各式各样的浏览器软件都如雨后春笋般孕育而生。网页浏览器的开发与应用更是成为了计算机领域近年来的一大热点。国内外的各种浏览器都大同小异,但其功能有时过于复杂,很多功能并非为用户所常用。很多商业浏览器上广告太多,往往影响了用户的正常使用,故本次课程设计做一个简单实用的浏览器。 3.主要解决的问题 设计一个Web浏览器,其主要功能是浏览网页。浏览网页的同时,用户需要知道自己的浏览记录,及保存自己喜欢的网站,以便日后的再次浏览。故本设计的主要解决的问题有: 1.用户能够对当前网页进行保存、设置、打印等操作 2.用户能够对网页进行收藏(添加收藏夹,整理收藏夹) 3.用户能够能够进行主页设置 4.用户可以查看自己的浏览历史,并可以将其删除 5.浏览器能够分页浏览 4.小组成员及分工情况 本次课程设计成员有:李想,林明(组长) 本WEB浏览器为简单的分页浏览器,其主界面中有:前进 后退 地址栏 停止 刷新 新建 主页等(地址栏保存最近访问的 10 条记录) 菜单栏功能: 文件(新建 打开 另存为 打印 打印预览 页面设置 属性 退出 ) 编辑(复制 粘贴 全选) 查看(转到 停止 刷新) 收藏(添加收藏夹 整理收藏夹等) 工具(主页设定 浏览历史) 帮助(关于浏览器) 分工情况: 李想:收藏夹部分,及最终系统的测试 林明:其他部分 5.主要开发环境与工具、技术路线和解决方案 5.1主要开发环境与工具 软件应工作在Windows系统上,建议使用Windows2000操作系统的计算机,另外配备Access2000数据库和Visual Studio2005。 5.2技术路线和解决方案 设计一个IE浏览器,其主要功能是浏览网页。为了实现浏览网页的功能,我添加一个控件:WebBrowser。这个控件的Navigate方法可以打开指定的网页,从而实现了浏览网页的目的。在工具栏添加一个ToolStripComboBox1作地址栏,定义它的Click事件和KeyPress事件,开始搜网。我直接用ToolStripComboBox1.AddItem ( string ),来保存网址。输入的网址会放到数据库中同时判断该网址是否已存在等问题,存放网址的数据库更新之后会把表中的网址添加到ToolStripComboBox1中。 主界面从上到下几次为菜单栏、工具栏、tabcontrol控件(在里面添加webbrowser控件用于分页浏览)、状态栏。 接下来我就开始设计菜单的功能,对于“文件”菜单,其中“新建”和“关闭”菜单就利用窗体的相关方法就可实现。“另存为” “ 打印” “ 打印预览” “页面设置” “属性”可以通过WebBrowser控件中的相关方法实现。比较麻烦的是“打开”菜单项,我添加了一个窗体作为“打开”对话框,然后编写相应的程序。 对于“编辑”菜单的各项功能,可以调用WebBrowser控件的ExecCommand方法,实现相应功能。对于“查看”菜单的各项功能,WebBrowser也有相应的方法实现其功能。“收藏”是最不好做的,要做到这步,需用数据库。我制作了一个窗体,并在其中写相应代码来实现功能。“工具”菜单中主要是“主页设定”和“浏览历史”功能,为它们分别设计相应的窗体,其中“主页设定“会用到注册表的修改。 工具栏中主要是对当前网页的一些操作,菜单栏中都有相应的功能。 tabcontrol控件里面添加webbrowser控件用于分页浏览,webbrowser控件中的NewWindow事件是进行分页浏览的关键。 状态栏中主要显示当前网页的状态(通过StatusTextChanged事件来获得),当前时间,当前网页的进度(通过ProgressChanged事件获得) 6.系统分析与设计 (包括数据库、界面设计、主要模块算法程序流程图(或N-S图)) 数据库(Web浏览器.mdb,一个access数据库中有多张表): 表“最近记录”用来存放最近输入的十条网址。字段有:地址(text)。 表“浏览历史”用来存放浏览过的网址及其标题。字段有:标题(text),地址(text)。 表“收藏夹名”用来存放已经新建的收藏夹的名字。字段有:NAME(text)。 其他的表是由用户动态创建的,每新建一个收藏夹就会动态的创建相应的表。表名存放在表“收藏夹名”中,这些表的字段有:标题(text),地址(text)。 界面设计 Form1(主界面) 该界面主要用于对当前网页及浏览器进行一些操作。 Form2(打开界面) 该界面是用户点击菜单:文件—打开时产生的,用户可以在其textbox中输入网址,也可通过点击浏览来查看自己电脑中的网址 Form3(收藏夹界面) 用户需要添加或整理收藏夹的时候会弹出该界面,左边的listbox中会显示已经有的收藏夹的名字,右边的listview中则显示当前收藏夹中的网站信息(标题和网址),当在listview中选中某网站时,下面的两个textbox中会同时显示其标题和网址。各个按钮分别实现相应的功能。 Form4(主页设置界面) 在该界面下的textbox中输入你想要设定的主页的网址,可以修改主页,是通过修改注册表来实现的。 Form5(关于界面) 该界面显示的是关于本系统的开发及作者的一些信息。 Form6(历史记录界面) 该界面中的listview中会显示用户浏览网页的历史。按下相应的按钮可以清除记录。 由于本系统为Web浏览器,其主要模块算法程序不方便用程序流程图(或N-S图)画出,故在此省略。 7.系统编码 Form1: Imports System.ComponentModel Imports System.Data.OleDb Imports System.Windows.Forms Public Class Form1 Dim change As Boolean Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '把数据库中最近记录表里的数据写到ToolStripComboBox1中 Dim mybmb As BindingManagerBase Dim mycon As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Web浏览器.mdb") Dim mycom As New OleDbCommand Dim myda As New OleDbDataAdapter Dim MyDs As New DataSet mycon.Open() mycom.Connection = mycon mycom.CommandText = "select * from 最近记录" myda.SelectCommand = mycom myda.Fill(MyDs, "最近记录") mybmb = Me.BindingContext(MyDs, "最近记录") Dim i As Integer If mybmb.Count > 0 Then For i = mybmb.Count - 1 To 0 Step -1 ToolStripComboBox1.Items.Add(MyDs.Tables("最近记录").Rows(i).Item("地址").ToString) Next End If mycon.Close() TabControl1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Top Or AnchorStyles.Left Or AnchorStyles.Right '定位TabControl1控件与窗体的上、下、左、右边框保持一致 Dim mypage As New TabPage Dim tempBrowser As New WebBrowser AddHandler tempBrowser.ProgressChanged, New WebBrowserProgressChangedEventHandler(AddressOf tempBrowser_ProgressChanged) '为WebBrowser控件添加ProgressChanged事件 AddHandler tempBrowser.Navigated, New WebBrowserNavigatedEventHandler(AddressOf tempBrowser_Navigated) '为WebBrowser控件添加Navigated事件 AddHandler tempBrowser.NewWindow, New CancelEventHandler(AddressOf tempBrowser_NewWindow) '为WebBrowser控件添加NewWindow事件 AddHandler tempBrowser.StatusTextChanged, New EventHandler(AddressOf tempBrowser_StatusTextChanged) '为WebBrowser控件添加StatusTextChanged事件 tempBrowser.Dock = DockStyle.Fill '使控件完全填充到窗体中 tempBrowser.GoHome() mypage.Controls.Add(tempBrowser) TabControl1.TabPages.Add(mypage) Timer1.Enabled = True End Sub '''''''''''''''''''''''''''''临时浏览器事件''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '临时浏览器定向完毕 Private Sub tempBrowser_Navigated(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) ToolStripComboBox1.Text = getCurrentBrowser().Url.ToString().Trim record(getCurrentBrowser().DocumentTitle.Trim, getCurrentBrowser().Url.ToString.Trim) '把刚浏览的网页写到数据库中 End Sub '临时浏览器产生新窗体事件 Private Sub tempBrowser_NewWindow(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) ' e.Cancel = True Dim mybrowser As WebBrowser = CType(sender, WebBrowser) '获取触发tempBrowser_NewWindow事件的浏览器 Dim mypage As TabPage = CType(mybrowser.Parent, TabPage) '获取触发tempBrowser_NewWindow事件的浏览器所在TabPage Dim newurl As String = mybrowser.StatusText '通过StatusText属性获得新的ur Dim TabPageTemp As TabPage = New TabPage '生成新的一页 Dim tempBrowser As WebBrowser = New WebBrowser '生成新的tempBrowser tempBrowser.Navigate(newurl) '临时浏览器定向到新的url tempBrowser.Dock = DockStyle.Fill '为临时浏览器关联NewWindow等事件 AddHandler tempBrowser.ProgressChanged, New WebBrowserProgressChangedEventHandler(AddressOf tempBrowser_ProgressChanged) AddHandler tempBrowser.Navigated, New WebBrowserNavigatedEventHandler(AddressOf tempBrowser_Navigated) AddHandler tempBrowser.NewWindow, New CancelEventHandler(AddressOf tempBrowser_NewWindow) AddHandler tempBrowser.StatusTextChanged, New EventHandler(AddressOf tempBrowser_StatusTextChanged) TabPageTemp.Controls.Add(tempBrowser) TabControl1.TabPages.Add(TabPageTemp) TabControl1.SelectedTab = TabPageTemp e.Cancel = True End Sub ' 临时浏览器状态变化事件 Private Sub tempBrowser_StatusTextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Dim myBrowser As WebBrowser = CType(sender, WebBrowser) If myBrowser.Equals(getCurrentBrowser()) = False Then Return Else ToolStripStatusLabel1.Text = myBrowser.StatusText TabControl1.SelectedTab.Text = newstring(getCurrentBrowser().DocumentTitle.Trim) End If End Sub '临时浏览器进度变化事件,在ProgressChanged事件中编写代码,用于实现当打开某个网站时,显示加载的进度,然后再重新调用setStatusButton方法设置按钮状态 Private Sub tempBrowser_ProgressChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserProgressChangedEventArgs) ToolStripProgressBar1.Visible = True '显示控件 ToolStripProgressBar1.Maximum = e.MaximumProgress '设置进度条的最大值 ToolStripProgressBar1.Value = e.CurrentProgress '设置进度条当前值 ToolStripProgressBar1.Visible = False '隐藏控件 setStatusButton() '设置按钮状态 End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick ToolStripStatusLabel2.Text = Date.Now End Sub Private Function newstring(ByVal oldstring As String) As String Dim temp As String If (oldstring.Length < 8) Then temp = oldstring Else temp = oldstring.Substring(0, 8) End If Return temp End Function '新建一页并定向到指定address Friend Sub newPage(ByVal address As String) Dim mypage As TabPage = New TabPage() Dim tempBrowser As WebBrowser = New WebBrowser() '为临时浏览器关联NewWindow等事件 AddHandler tempBrowser.ProgressChanged, New WebBrowserProgressChangedEventHandler(AddressOf tempBrowser_ProgressChanged) AddHandler tempBrowser.Navigated, New WebBrowserNavigatedEventHandler(AddressOf tempBrowser_Navigated) AddHandler tempBrowser.NewWindow, New CancelEventHandler(AddressOf tempBrowser_NewWindow) AddHandler tempBrowser.StatusTextChanged, New EventHandler(AddressOf tempBrowser_StatusTextChanged) tempBrowser.Navigate(address) '临时浏览器定位到address tempBrowser.Dock = DockStyle.Fill ''使控件完全填充到窗体中 mypage.Controls.Add(tempBrowser) TabControl1.TabPages.Add(mypage) change = False TabControl1.SelectedTab = mypage '设置选中的选项卡 End Sub '把浏览记录写到数据库里德浏览历史表中 Friend Sub record(ByVal title As String, ByVal address As String) Dim mycon As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Web浏览器.mdb") Dim mycom As New OleDbCommand mycon.Open() mycom.CommandText = "insert into 浏览历史" + " values('" + title + "','" + address + "')" mycom.Connection = mycon mycom.ExecuteNonQuery() mycon.Close() End Sub '获取当前浏览器 Friend Function getCurrentBrowser() As WebBrowser Dim currentBrowser As WebBrowser = TabControl1.SelectedTab.Controls(0) Return currentBrowser End Function '设置"前进","后退"button的可用状态 Private Sub setStatusButton() ToolStripBBack.Enabled = getCurrentBrowser().CanGoBack '通过控件的CanGoBack属性判断上一页是否可用,根据返回值设置后退按钮的Enabled属性 ToolStripBNext.Enabled = getCurrentBrowser().CanGoForward '通过控件的CanGoForward属性判断下一页是否可用,根据返回值设置前进按钮的Enabled属性 End Sub '''''''''''''''''''''''''''''''''''''''''''菜单栏''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '文件菜单 Private Sub 新建ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 新建ToolStripMenuItem.Click Dim newweb As New Form1 newweb.Show() '新建一个窗口 End Sub Private Sub 打开ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 打开ToolStripMenuItem.Click Form2.Show() '显示第二个窗体,即打开窗口 End Sub Private Sub 另存为ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 另存为ToolStripMenuItem.Click getCurrentBrowser().ShowSaveAsDialog() '调用WebBrowser控件的ShowSaveAsDialog方法打开保存窗体 End Sub Private Sub 打印ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 打印ToolStripMenuItem.Click getCurrentBrowser().ShowPrintDialog() '调用WebBrowser控件的ShowPrintDialog方法打开打印窗体 End Sub Private Sub 打印预览ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 打印预览ToolStripMenuItem.Click getCurrentBrowser().ShowPrintPreviewDialog() '调用WebBrowser控件的ShowPrintPreviewDialog方法打开打预览印窗体 End Sub Private Sub 页面设置ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 页面设置ToolStripMenuItem.Click getCurrentBrowser().ShowPageSetupDialog() '调用WebBrowser控件的ShowPageSetupDialog方法打开页面设置窗体 End Sub Private Sub 属性ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 属性ToolStripMenuItem.Click getCurrentBrowser().ShowPropertiesDialog() '调用WebBrowser控件的ShowPropertiesDialog方法打开属性窗体 End Sub Private Sub 退出ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 退出ToolStripMenuItem.Click Application.Exit() End Sub '编辑菜单 Private Sub 复制ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 复制ToolStripMenuItem.Click getCurrentBrowser().Document.ExecCommand("Copy", False, Nothing) End Sub Private Sub 粘贴ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 粘贴ToolStripMenuItem.Click getCurrentBrowser().Document.ExecCommand("Paste", False, Nothing) End Sub Private Sub 全选ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 全选ToolStripMenuItem.Click getCurrentBrowser().Document.ExecCommand("selectall", False, Nothing) End Sub '查看菜单 Private Sub 主页ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 主页ToolStripMenuItem.Click getCurrentBrowser().GoHome() '调用WebBrowser控件的GoHome方法实现定向到用户设置的主页 End Sub Private Sub 后退ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 后退ToolStripMenuItem.Click getCurrentBrowser().GoBack() '调用WebBrowser控件的GoBack方法返回到上一页 setStatusButton() '重新设置按钮状态 End Sub Private Sub 前进ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 前进ToolStripMenuItem.Click getCurrentBrowser().GoForward() '调用WebBrowser控件的GoForward方法打开下一页 setStatusButton() End Sub Private Sub 停止ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 停止ToolStripMenuItem.Click getCurrentBrowser().Stop() '调用WebBrowser控件的Stop方法实现停止页面加载的功能 End Sub Private Sub 刷新ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 刷新ToolStripMenuItem.Click getCurrentBrowser().Refresh() '调用WebBrowser控件的Refresh方法实现刷新当前页面的功能 End Sub '收藏菜单 Private Sub 添加收藏夹ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 添加收藏夹ToolStripMenuItem.Click Form3.Close() Form3.add = True Form3.Show() End Sub Private Sub 整理收藏夹ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 整理收藏夹ToolStripMenuItem.Click Form3.Close() Form3.Show() End Sub '工具菜单 Private Sub 主页设定ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 主页设定ToolStripMenuItem.Click Form4.Show() '显示主页设定窗口 End Sub Private Sub 浏览历史ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 浏览历史ToolStripMenuItem.Click Form6.Show() '显示浏览历史窗口 End Sub '帮助菜单 Private Sub 关于浏览器ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 关于浏览器ToolStripMenuItem.Click Form5.Show() '显示关于窗口 End Sub ''''''''''''''''''''''''''''''''''''''''''''''工具栏'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Private Sub ToolStripBBack_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBBack.Click getCurrentBrowser().GoBack() setStatusButton() End Sub Private Sub ToolStripBNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBNext.Click getCurrentBrowser().GoForward() setStatusButton() End Sub Private Sub ToolStripBGo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBGo.Click writerecord() newPage(ToolStripComboBox1.Text) '调用newPage打开指定的网站 End Sub '把最近记录写到数据库中,并更新ToolStripComboBox1里的内容 Private Sub writerecord() Dim mybmb As BindingManagerBase Dim mycon As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Web浏览器.mdb") Dim mycmd, mycom As New OleDbCommand Dim myda As New OleDbDataAdapter Dim MyDs As New DataSet mycmd.Connection = mycon mycon.Open() mycmd.CommandText = "delete from 最近记录where 地址='" + ToolStripComboBox1.Text + "'" mycmd.ExecuteNonQuery() mycmd.CommandText = "insert into 最近记录(地址) values('" + ToolStripComboBox1.Text + "')" mycmd.ExecuteNonQuery() mycom.Connection = mycon mycom.CommandText = "select * from 最近记录" myda.SelectCommand = mycom myda.Fill(MyDs, "最近记录") mybmb = Me.BindingContext(MyDs, "最近记录") If mybmb.Count > 10 Then mycmd.CommandText = "delete from 最近记录where 地址='" + MyDs.Tables("最近记录").Rows(0).Item("地址").ToString + "'" mycmd.ExecuteNonQuery() End If MyDs.Clear() myda.Fill(MyDs, "最近记录") mybmb = Me.BindingContext(MyDs, "最近记录") Dim i As Integer If mybmb.Count > 0 Then ToolStripComboBox1.Items.Clear() For i = mybmb.Count - 1 To 0 Step -1 ToolStripComboBox1.Items.Add(MyDs.Tables("最近记录").Rows(i).Item("地址").ToString) Next End If mycon.Close() End Sub Private Sub ToolStripBRefress_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBRefress.Click getCurrentBrowser().Refresh() End Sub Private Sub ToolStripBStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBStop.Click getCurrentBrowser().Stop() End Sub Private Sub ToolStripBHome_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBHome.Click getCurrentBrowser().GoHome() End Sub Private Sub ToolStripBNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBNew.Click newPage("about:blank") '调用newPage方法创建多页面空白页 End Sub Private Sub ToolStripComboBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ToolStripComboBox1.KeyPress If Asc(e.KeyChar) = System.Windows.Forms.Keys.Enter Then writerecord() If getCurrentBrowser().Url.ToString = "about:blank" Then getCurrentBrowser().Navigate(ToolStripComboBox1.Text) Else newPage(ToolStripComboBox1.Text) End If End If End Sub '双击关闭当前页面 Private Sub TabControl1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControl1.DoubleClick If TabControl1.TabPages.Count <= 1 Then '仅仅剩下一个tab时返回 TabControl1.SelectedTab.Text = "空白页" getCurrentBrowser().Navigate("about:blank") Else '先将tabControl1隐藏然后remove掉目标tab(如果不隐藏则出现闪烁,即系统自动调转到tabControl1的第一个tab然后跳会。)最后显示tabControl1。 TabControl1.Visible = False Dim mybor As WebBrowser = getCurrentBrowser() '释放资源 mybor.Dispose() mybor.Controls.Clear() TabControl1.TabPages.Remove(TabControl1.SelectedTab) '重新设置当前tab TabControl1.SelectedTab = TabControl1.TabPages(TabControl1.TabPages.Count - 1) TabControl1.Visible = True End If End Sub '切换tab Private Sub TabControl1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TabControl1.SelectedIndexChanged If change Then Dim mybor As WebBrowser = TabControl1.SelectedTab.Controls(0) If mybor.Url.ToString <> "" Then ToolStripComboBox1.Text = mybor.Url.ToString() TabControl1.SelectedTab.Text = newstring(mybor.DocumentTitle) ToolS
/
本文档为【Web浏览器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索