开始写程序-多选项卡浏览器
vb.net吧
全部回复
仅看楼主
level 13
一楼防偷窥
2014年11月25日 03点11分 1
level 13
有没人一起来?也欢迎各位大神指正。
本人不喜欢在form上加加减减,修改起来很麻烦,就用代码动态设计布局吧。
form1.vb[设计]里面是空的,都在代码里。
工具:VB.NET 2010 学习版
2014年11月25日 03点11分 2
level 13

Public Class Form1
Private Sub form1_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call Form设计()
End Sub
Sub Form设计()
Me.Text = "XX浏览器"
Dim 主菜单 As MenuStrip = New MenuStrip()
Dim 地址框 As TextBox = New TextBox()
Dim ButtonGO As Button = New Button()
Dim ButtonBACK As Button = New Button()
Dim ButtonFORWARD As Button = New Button()
Dim ButtonREFRESH As Button = New Button()
Me.Controls.Add(主菜单)
Me.Controls.Add(地址框)
Dim 我的选项卡 As 选项卡 = New 选项卡()
Me.Controls.Add(我的选项卡)
End Sub
Class 选项卡
Inherits System.Windows.Forms.TabControl
End Class
Class 浏览窗口
Inherits System.Windows.Forms.WebBrowser
'需要重写一些东东
End Class
End Class
2014年11月25日 03点11分 3
level 12
Dim Page As New TabPage()
Page.Name = "Page" & index.ToString()
Page.Text = "tabPage" & index.ToString()
Page.TabIndex = index
Dim WebBrowser1 As New WebBrowser()
WebBrowser1.Url = ""
Page.Controls.Add(WebBrowser1)
TabControl3.Controls.Add(Page)
用AddressOf 去绑定其他按钮事件就可以了,你全部重写,太花时间。
2014年11月25日 03点11分 5
没用过AddressOf
2014年11月25日 03点11分
回复 zhengtiger2003 :建议用一下,你很多的按钮的代码都是重复的,比如向前、向后、刷新等。只要在代码里控制好你刷新的那一个选项卡的浏览器控件就可以了。
2014年11月25日 03点11分
你的意思是不是写成 AddHandler XXX.Click, AddressOf XXX_Click ?
2014年11月30日 10点11分
回复 zhengtiger2003 :是的
2014年12月01日 11点12分
level 13
哈哈, 百度首页出来了,谁帮我把这些菜单按钮布局一下呀
Public Class Form1
Private Sub form1_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call Form设计()
End Sub
Sub Form设计()
Me.Text = "XX浏览器"
Dim 主菜单 As MenuStrip = New MenuStrip()
Dim 地址框 As TextBox = New TextBox()
Dim Button进入 As Button = New Button()
Dim Button回退 As Button = New Button()
Dim Button前进 As Button = New Button()
Dim Button刷新 As Button = New Button()
Dim Button新选项卡 As Button = New Button()
Me.Controls.Add(主菜单)
Me.Controls.Add(地址框)
Me.Controls.Add(Button进入)
Me.Controls.Add(Button回退)
Me.Controls.Add(Button前进)
Me.Controls.Add(Button刷新)
Me.Controls.Add(Button新选项卡)
Dim 我的选项卡 As 选项卡 = New 选项卡()
Me.Controls.Add(我的选项卡)
Dim 首页 As 选项卡页 = New 选项卡页()
我的选项卡.Controls.Add(首页)
Dim 首页浏览窗口 As 浏览窗口 = New 浏览窗口()
首页.Controls.Add(首页浏览窗口)
首页浏览窗口.Url = New System.Uri("http://www.baidu.com", System.UriKind.Absolute)
End Sub
Class 选项卡
Inherits System.Windows.Forms.TabControl
End Class
Class 选项卡页
Inherits System.Windows.Forms.TabPage
'重写一些东东
End Class
Class 浏览窗口
Inherits System.Windows.Forms.WebBrowser
'重写一些东东
End Class
End Class
2014年11月25日 03点11分 6
level 13
本帖是 运行本程序进贴吧发的,终于不乱开窗口了。
2014年11月25日 08点11分 7
level 13

Imports System.Threading
Public Class Form1
Private Sub form1_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call Form设计()
End Sub
Sub Form设计()
Me.Text = "XX浏览器"
Dim 地址框 As TextBox = New TextBox()
Dim Button进入 As Button = New Button()
Dim Button新选项卡 As Button = New Button()
Me.Controls.Add(地址框)
Me.Controls.Add(Button进入)
Me.Controls.Add(Button新选项卡)
Dim 我的选项卡 As 选项卡 = New 选项卡()
Me.Controls.Add(我的选项卡)
Dim 选项卡首页 As 选项卡页 = New 选项卡页()
我的选项卡.Controls.Add(选项卡首页)
Dim 首页浏览窗口 As 浏览窗口 = New 浏览窗口()
选项卡首页.Controls.Add(首页浏览窗口)
首页浏览窗口.Url = New System.Uri("https://tieba.baidu.com/f?kw=vb.net", System.UriKind.Absolute)
Me.WindowState = 2
Dim 首行高度 As Integer = Me.Font.Height + 8
Dim 导航按钮宽度 As Integer = 80
With 地址框
.Location = New System.Drawing.Point(3, 0)
.Size = New System.Drawing.Size(400, 首行高度)
.TabIndex = 1
.Text = "http://www.baidu.com"
End With
With Button进入
.Location = New System.Drawing.Point(地址框.Width + 3, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 2
.Text = "进入"
End With
With Button新选项卡
.Location = New System.Drawing.Point(地址框.Width + 3 + 导航按钮宽度, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 3
.Text = "新选项卡"
End With
With 我的选项卡
.TabIndex = 4
.RightToLeft = System.Windows.Forms.RightToLeft.Yes
.RightToLeftLayout = True
.Dock = DockStyle.Fill
End With
With 首页浏览窗口
.Dock = DockStyle.Fill
End With
End Sub
Class 选项卡
Inherits System.Windows.Forms.TabControl
End Class
Class 选项卡页
Inherits System.Windows.Forms.TabPage
'重写一些东东
End Class
Class 浏览窗口
Inherits System.Windows.Forms.WebBrowser
Protected Sub 浏览窗口_NewWindow(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyClass.NewWindow
e.Cancel = True
Dim urlNew = sender.Document.ActiveElement.GetAttribute("href")
WebBrowser.Navigate(urlNew)
End Sub
End Class
End Class
2014年11月25日 08点11分 8
level 13
初步完成:
1.在本程序打开链接,不会转到IE那里,不乱弹窗口
2.多个选项卡同时浏览不同页面
Imports System.Threading
Public Class Form1
Dim 地址框 As TextBox
Friend WithEvents Button进入 As Button
Friend WithEvents Button辅助 As Button
Friend WithEvents Button收藏 As Button
Friend WithEvents Button新选项卡 As Button
Friend WithEvents 我的选项卡 As 选项卡
Friend WithEvents 选项卡首页 As 选项卡页
Friend WithEvents 首页浏览窗口 As 浏览窗口
Dim 地址
Private Sub form1_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call Form设计()
地址 = New Uri(Me.地址框.Text)
End Sub
Sub Form设计()
Me.Text = "页游浏览器"
地址框 = New TextBox()
Button进入 = New Button()
Button辅助 = New Button()
Button收藏 = New Button()
Button新选项卡 = New Button()
Me.Controls.Add(地址框)
Me.Controls.Add(Button进入)
Me.Controls.Add(Button辅助)
Me.Controls.Add(Button收藏)
Me.Controls.Add(Button新选项卡)
我的选项卡 = New 选项卡()
Me.Controls.Add(我的选项卡)
选项卡首页 = New 选项卡页()
我的选项卡.Controls.Add(选项卡首页)
首页浏览窗口 = New 浏览窗口()
选项卡首页.Controls.Add(首页浏览窗口)
首页浏览窗口.Url = New System.Uri("https://tieba.baidu.com/f?kw=vb.net", System.UriKind.Absolute)
Me.WindowState = 2
Dim 首行高度 As Integer = Me.Font.Height + 8
Dim 导航按钮宽度 As Integer = 80
With 地址框
.Location = New System.Drawing.Point(3, 0)
.Size = New System.Drawing.Size(400, 首行高度)
.TabIndex = 1
.Text = "http://www.baidu.com"
End With
With Button进入
.Location = New System.Drawing.Point(地址框.Width + 3, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 2
.Text = "进入"
End With
With Button辅助
.Location = New System.Drawing.Point(地址框.Width + 3 + 导航按钮宽度, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 3
.Text = "辅助"
End With
With Button收藏
.Location = New System.Drawing.Point(地址框.Width + 3 + 导航按钮宽度 * 2, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 3
.Text = "收藏"
End With
With Button新选项卡
.Location = New System.Drawing.Point(地址框.Width + 3 + 导航按钮宽度 * 3, 0)
.Size = New System.Drawing.Size(导航按钮宽度, 首行高度)
.TabIndex = 5
.Text = "新选项卡"
End With
With 我的选项卡
.TabIndex = 4
.RightToLeft = System.Windows.Forms.RightToLeft.Yes
.RightToLeftLayout = True
.Dock = DockStyle.Fill
End With
With 首页浏览窗口
.Dock = DockStyle.Fill
End With
End Sub
Class 选项卡
Inherits System.Windows.Forms.TabControl
End Class
Class 选项卡页
Inherits System.Windows.Forms.TabPage
'重写一些东东
End Class
Class 浏览窗口
Inherits System.Windows.Forms.WebBrowser
Protected Sub 浏览窗口_Navigating(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyClass.Navigating
MyBase.ScriptErrorsSuppressed = True
End Sub
Protected Sub 浏览窗口_Navigated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles MyClass.Navigated
Form1.地址框.Text = Me.Url.ToString
End Sub
Protected Sub 浏览窗口_NewWindow(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyClass.NewWindow
e.Cancel = True
Dim urlNew = sender.Document.ActiveElement.GetAttribute("href")
MyBase.ScriptErrorsSuppressed = True
MyBase.Navigate(urlNew)
End Sub
End Class
Private Sub Button进入_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button进入.Click
地址 = New Uri(地址框.Text)
首页浏览窗口.Navigate(地址)
End Sub
Private Sub Button新选项卡_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button新选项卡.Click
Dim 新选项卡 As 选项卡页 = New 选项卡页()
我的选项卡.Controls.Add(新选项卡)
Dim 新浏览窗口 = New 浏览窗口()
新选项卡.Controls.Add(新浏览窗口)
新浏览窗口.Url = New System.Uri("http://www.baidu.com", System.UriKind.Absolute)
新浏览窗口.Dock = DockStyle.Fill
End Sub
End Class
2014年11月25日 13点11分 9
level 5
怪麻烦的,不如用控件界面自动添加,既方便,又易懂,内部VB.NET的IDE帮你干了。
2014年11月25日 14点11分 10
用控件界面加修改起来麻烦,而且这里还有后续会很多动态控件,静态控件没几个干脆一起用代码搞了
2014年11月25日 15点11分
level 5
给个运行后的屏幕截图,我也学学。
2014年11月26日 05点11分 11
level 13
2014年11月26日 05点11分 12
level 12
用.net 自身去开发这个浏览器,调用的是IE的内核,没有什么性能上的提升的,练练手还行。
2014年11月26日 05点11分 13
我的目标是搞些页游辅助和浏览器集成到一起
2014年11月26日 06点11分
回复 zhengtiger2003 :如果你要针对一些网页游戏的外挂开发一定要用HttpWebRequest
2014年11月26日 06点11分
大概懂点,需要的时候在看看资料
2014年11月26日 06点11分
不过我只想做一些键鼠模拟的动作,现阶段不碰封包
2014年11月26日 06点11分
level 13
用这个开网页感觉比IE快了将近一半,不知什么原因?难道IE里面加载很多其他东西?
2014年11月26日 06点11分 14
1