【问题标题】:VB.NET panel scrolling without showing scrollbarsVB.NET 面板滚动而不显示滚动条
【发布时间】:2014-11-08 03:44:52
【问题描述】:

我正在尝试创建一个自定义 UI 元素:一个面板,源自原始 面板,它可以使用特殊滚动条(不是集成滚动条)进行滚动,并具有一些其他特殊功能。 p>

实际的问题是滚动。当我更改自定义滚动条的值(例如滚动)时,面板集成的滚动条会突然出现,尽管 autoScroll = false。 导致两个滚动条都可见的意外状态、集成的和我的自定义滚动条。

Private Sub ScrollB_EvValueChanged(NewVal As Integer) Handles ScrollB.EvValueChanged
    Me.CleanPanel1.VerticalScroll.Value = NewVal
End Sub

如何将由自定义滚动条确定的新滚动位置(新偏移量)分配给面板而不显示面板集成的滚动条?

遗憾的是,一个面板(或用户控件)上面有另一个面板并使用内部面板的 .Top 和 .Left 属性来模拟滚动,在我的情况下不是一个合适的解决方案。

感谢您的所有提示!

【问题讨论】:

  • 你试过Me.CleanPanel1.VerticalScroll.Visible = False
  • 而不是重新创建滚轮(包括跟踪滚动位置和鼠标导航、键盘导航),您可以简单地添加任何您需要的功能到现有控件。很难想象你会如何以不同的方式滚动。
  • 可见属性是真的吗?
  • 明确地将Me.CleanPanel1.VerticalScroll.Visible 转换为False 不会改变任何东西。当一个值被分配给Me.CleanPanel1.VerticalScroll.Value 时,集成的滚动条会弹出一毫秒。如何避免这种行为?
  • @Plutonix 自定义滚动条已经由我制作,并对按键、鼠标滚轮等做出反应。现在只是绑定到面板 - 让我们说 - 滚动偏移导致问题..

标签: vb.net scroll element panel manual


【解决方案1】:

'我一直在寻找这样做的方法,大部分都比它需要的复杂得多,或者你必须编写一个完整的程序来删除滚动条。无论如何,这是一种快速、有效、简洁的方法(因为我找不到任何东西,我会发布它。 'e.delta 检测鼠标滚轮刻度,如果大于0,向上滚动,小于0向下滚动。 ' -91 部分扣除了部分面板悬垂(根据需要调整) “我在这个项目中有 50 高的按钮,所以这对我来说非常适合滚动。 '没有代码的嵌套 if 语句(只是 else)告诉程序停止 '如果边界在附近,什么也不做。我的面板底部在滚动时不会“停止”当面板底部(它以某种方式悬挂在表单底部)到达表单底部时,这可以通过更改 700 来调整常数。

Private Sub DaddyPanel_MouseWheel(sender As Object, e As MouseEventArgs) Handles DaddyPanel.MouseWheel

        If e.Delta < 0 Then
            If (-DaddyPanel.Height - 91) > (DaddyPanel.Location.Y - 700) Then
            Else
                TextBox1.Text = DaddyPanel.Height & " " & DaddyPanel.Location.Y
                DaddyPanel.Location = DaddyPanel.Location + New Point(0, -50)
            End If

        Else
                If DaddyPanel.Location = New Point(0, 0) Then
            Else
                DaddyPanel.Location = DaddyPanel.Location + New Point(0, 50)
            End If
        End If
    End Sub

【讨论】:

    猜你喜欢
    • 2018-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-20
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 2010-11-22
    相关资源
    最近更新 更多