【问题标题】:in VB.net, how do I get a panel to scroll on a touch screen?在 VB.net 中,如何让面板在触摸屏上滚动?
【发布时间】:2016-03-08 22:53:34
【问题描述】:

我有一个面板,上面有一个垂直滚动条。面板内部有几个 DataGridView。当我在联想 ThinkPad 等触摸屏上使用该应用程序时,我希望能够通过在屏幕上上下滑动手指来上下移动整个面板。但是,这不会发生。如果我触摸屏幕,我可以选择数据网格上的单个行。或者,如果我触摸侧面的滑块,我可以像使用鼠标一样使屏幕上下移动,但除此之外,我无法使面板移动。

如果我使用浏览器,并且页面比屏幕大,那么我可以用手指上下滑动整个页面。我意识到这是一个浏览器而不是 Windows 窗体应用程序,但这是我需要的功能。

我的应用程序是一个 Windows 窗体应用程序。 谢谢。

【问题讨论】:

标签: vb.net touch panel


【解决方案1】:

您可以创建一个新表单,在此处打开 AutoScroll 并将其拉伸到您选择的宽度。

然后在您的其他表单中,您只需将其添加为面板中的控件即可。 示例(Form1 = 主窗体,Form2 = AutoScroll 窗体,Panel1 = 您的面板):

Sub Form1_Load(...) Handles MyBase.Load
      Dim ScrollFrm As New Form2()
      ScrollFrm.TopLevel = False
      Panel1.Controls.Add(ScrollFrm)
      ScrollFrm.Dock = DockStyle.Fill
      ScrollFrm.Show()
End Sub

希望有帮助:)

【讨论】:

  • 我不明白这将如何帮助他用手指进行滚动...此外,停靠表单将使其适应面板的大小。
  • 不是,但感谢您的评论。我最终使用另一个问题中的信息来解决我的问题。另一个问题在这个链接上:stackoverflow.com/questions/6963498/…
【解决方案2】:

我最终使用此链接将我的答案放在一起。我不得不进行一些细微的修改以满足我的需要,但基本的想法是一样的。

how to get smartphone like scrolling for a winforms touchscreen app ( scrolling panel )

【讨论】:

    猜你喜欢
    • 2016-06-12
    • 1970-01-01
    • 1970-01-01
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多