如何在visual basic中的选项卡控件中隐藏选项卡选择器

时间:2016-07-12 18:45:14

标签: vb.net

基本上我目前正在尝试使用visual basic为作业创建一个订购程序,我想知道是否可以隐藏页面顶部的选项卡控件,而是让用户更改通过按下按钮。我已经知道如何创建更改页面的按钮,但我无法弄清楚如何隐藏选项卡选择器。

这方面的一个例子是用户输入他们下次点击后的详细信息,然后将他们带到付款界面。

请记住,我是一个绝对的初学者,所以我可能需要一些额外的解释

2 个答案:

答案 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替换为标签控件名称。