符合中小企业对网站设计、功能常规化式的企业展示型网站建设
本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...
商城网站建设因基本功能的需求不同费用上面也有很大的差别...
手机微信网站开发、微信官网、微信商城网站...
其实按钮加上PictureBox做容器就是Tab,假如你不希望软件运行时要求更多运行库,那这是你最好的选择,对按钮样式不满意,也可以用PictureBox或Image替换自己图片,要效果可以自己在Mouse...等事件里写代码。
10年积累的成都网站设计、成都网站建设、外贸网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有鄱阳免费网站建设让你可以放心的选择与我们合作。
建议使用类名来实现,然后通过JS进行修改,例子如下(选中的选项卡背景颜色变为蓝色):
style
.tab{ width: 100px; height: 100px; background-color: red; }
.tab.active{ background-color: blue; }
/style
div class="tab active"选项卡1/div
div class="tab"选项卡1/div
script
var oTabs = document.querySeletorAll(".tab"), //获取选项卡元素
oIndex = 0; //当前选中的索引
//循环注册事件
for(var i = 0; i oTabs.length; i++){
oTabs.addEventListener("click", function(){
oTabs[oIndex].className = "tab"; //将上一个选中的元素取消样式
this.className = "tab active"; //将当前选中的元素加上样式
});
}
//jquery写法
/* var $tabs = $(".tab");
$tabs.click(function(){
$(this).addClass("active").siblings().removeClass("active");
}); */
/script
需要引用Microsoft Windows Common Controls 6.0 (sp4)
然后添加选项卡控件
在选项卡控件的属性中添加选项
然后单击选项卡,按F1(你必须安装了MSDN)
按照它上面的例子做
选项卡控件不是一个容器,得做几个Frame或Picture把每一个选项里的控件“包”上。
以下为MSDN对选项卡控件的帮助:
TabStrip 控件就象笔记本的书签或者一组文件夹的标签一样。通过使用 TabStrip 控件,可以在应用程序中为某个窗口或者对话框的相同区域定义多个页面。
语法
TabStrip
说明
该控件由 Tabs 集合中的一个或者更多个 Tab 对象组成。在设计时和运行时,都可以通过设置该控件的属性影响 Tab 对象外观。也可以在设计时用 TabStrip 控件的属性页来添加或删除选项卡,要是在运行时用方法来添加或删除 Tab 对象。
Style 属性决定了 TabStrip 控件看起来是象下压按钮还是象笔记本标签 。在设计时将一个 TabStrip 控件放在某个窗体上时,它就有了一个笔记本标签。如果 Style 属性被设置为 tabTabs,那么 TabStrip 控件的内部区域周围将有一个边框。当 Style 属性被设置为 tabButtons 时,控件的内部区域周围不显示边框,不过,那个区域仍然存在。
要设置 TabStrip 控件的整体大小,用其拖动句柄或者设置其 Top、Left、Height 和 Width 属性。运行时根据该控件的整体大小,Visual Basic 自动决定内部区域的大小和位置并返回 Client-coordinate 属性— ClientLeft、ClientTop、ClientHeight 和 ClientWidth。MultiRow 属性决定了该控件能否具有多于一行的选项卡,TabWidthStyle 属性决定了每一行的外观,还有,如果 TabWidthStyle 属性被设置为 tabFixed,则可以用 TabFixedHeight 和 TabFixedWidth 属性来给 TabStrip 控件中的所有选项卡设置相同的高度和宽度。
TabStrip 控件不是容器。要想包含实际页面和它们的对象,必须用 Frame 控件或者其它容器,它们的大小必须与控件中所有 Tab 对象共享的内部区域匹配。如果针对该容器使用了一个控件数组,则可以使特定的 Tab 对象与数组中的每一项相关联,请看下例:
Option Explicit
Private mintCurFrame As Integer' Current Frame visible
Private Sub Tabstrip1_Click()
If Tabstrip1.SelectedItem.Index = mintCurFrame _
Then Exit Sub ' No need to change frame.
' Otherwise, hide old frame, show new.
Frame1(Tabstrip1.SelectedItem.Index).Visible = True
Frame1(mintCurFrame).Visible = False
' Set mintCurFrame to new value.
mintCurFrame = Tabstrip1.SelectedItem.Index
End Sub
注意 在容器上将控件分组时,必须使用上述显示/隐藏策略,而不使用 Zorder Method 将框架带到全面来。否则,实现访问键(ALT + 访问键)的控件将一直响应键盘命令,甚至当容器不是最顶端的控件时也如此。还要注意,必须将每个组放在它自己的容器中,以此将 OptionButton 控件的组分离开,否则,窗体上的所有 OptionButtons 将象一大组 OptionButtons。
提示 使用 BorderStyle 属性为 None 的 Frame 控件作为容器来取代 PictureBox 控件。Frame 控件比起 PictureBox 控件来说所花费的开销少。
TabStrip 控件的 Tabs 属性是所有 Tab 对象的集合。每个 Tab 对象都具有与其当前状态和外观相关联的属性。例如,可以使 ImageList 控件与 TabStrip 控件相关联,然后就可以在单个选项卡上使用图象了。也可以使工具提示与每个 Tab 对象相关联。
发行注意 TabStrip 控件是一组自定义控件的一部分,这组自定义控件可以在文件 MSCOMCTL.OCX 中找到。为了在应用程序中使用 TabStrip 控件,必须将文件 MSCOMCTL.OCX 添加到工程中去。当发布应用程序时,要把文件 MSCOMCTL.OCX 安装到用户的 Microsoft Windows SYSTEM 目录下。关于如何在工程中添加自定义控件的详细信息,请参阅《程序员指南》。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TabControl1.TabPages.Add("aa") /添加一个选项卡
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TabControl1.TabPages.RemoveAt(2) /删除第二个的选项卡
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer
Dim mytabpage As New TabPage
Dim bln As Boolean
For i = 0 To TabControl1.TabPages.Count - 1
If (TabControl1.TabPages(i).Text) = "选项卡名字" Then
bln = True
Exit For
Else
bln = False
End If
Next
If bln = False Then
mytabpage.Name = "tabpages" i
mytabpage.Text = "选项卡名字"
mytabpage.BackColor = Color.White
TabControl1.TabPages.Add(mytabpage)
End If
End Sub
是这样的吧,不然还要把对应关系放进数组或者数据库?控件再编号对应吗。。。同求思路~