基本上我目前正在尝试使用visual basic为作业创建一个订购程序,我想知道是否可以隐藏页面顶部的选项卡控件,而是让用户更改通过按下按钮。我已经知道如何创建更改页面的按钮,但我无法弄清楚如何隐藏选项卡选择器。
这方面的一个例子是用户输入他们下次点击后的详细信息,然后将他们带到付款界面。
请记住,我是一个绝对的初学者,所以我可能需要一些额外的解释
答案 0 :(得分:1)
您可以创建自定义控件,覆盖WndProc
并捕获TCM_ADJUSTRECT
消息:
Public Class CustomTabControl
Inherits TabControl
Const TCM_ADJUSTRECT As Integer = &H1328
Protected Overrides Sub WndProc(ByRef message As Message)
If DesignMode = False AndAlso message.Msg = TCM_ADJUSTRECT Then
message.Result = New IntPtr(1) 'Always return 1.
Return
End If
MyBase.WndProc(message)
End Sub
End Class
通过Build > Build <your project name here>
菜单构建项目,然后您就可以从工具箱中添加它。
答案 1 :(得分:0)
这是最简单的方法,但它有效:
Private Sub Form1_Load_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim pic As New PictureBox
pic.BackColor = Color.Transparent
pic.Width = TabControl1.Width
pic.Height = 21
pic.Location = TabControl1.Location
Me.Controls.Add(pic)
pic.BringToFront()
End Sub
这将删除TabControl的上行。如果你想要它使用:
Private Sub Form1_Load_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim pic1 As New PictureBox
Dim pic2 As New PictureBox
pic1.BackColor = Color.Transparent
pic1.Width = TabControl1.Width
pic1.Height = 21
pic1.Location = TabControl1.Location
Me.Controls.Add(pic1)
pic1.BringToFront()
pic2.BackColor = Color.Gray
pic2.Width = TabControl1.Width - 2
pic2.Height = 1
pic2.Location = New Point(TabControl1.Location.X, TabControl1.Location.Y + 20)
Me.Controls.Add(pic2)
pic2.BringToFront()
End Sub
将TabControl1
替换为标签控件名称。