VB.NET.中,设一个总控VScrollBar,它怎样带动其他VScrollBar整体上下移动

xiaobayi95 2020-01-15 04:13:09
...全文
340 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaobayi95 2020-01-18
  • 打赏
  • 举报
回复
引用 7 楼 贵阳老马马善福专业维修游泳池堵漏防水工程 的回复:
[quote=引用 6 楼 xiaobayi95 的回复:]
像我发的图片的那种样式


你结贴后重新开一个问题,我写给你[/quote]
panel里怎么区分不同的滑轮呢
threenewbee 2020-01-18
  • 打赏
  • 举报
回复
引用 6 楼 xiaobayi95 的回复:
像我发的图片的那种样式


你结贴后重新开一个问题,我写给你
xiaobayi95 2020-01-18
  • 打赏
  • 举报
回复
引用 7 楼 贵阳老马马善福专业维修游泳池堵漏防水工程 的回复:
[quote=引用 6 楼 xiaobayi95 的回复:]
像我发的图片的那种样式


你结贴后重新开一个问题,我写给你[/quote]
好了
xiaobayi95 2020-01-18
  • 打赏
  • 举报
回复
引用 7 楼 贵阳老马马善福专业维修游泳池堵漏防水工程 的回复:
[quote=引用 6 楼 xiaobayi95 的回复:]
像我发的图片的那种样式


你结贴后重新开一个问题,我写给你[/quote]
在吗在吗
xiaobayi95 2020-01-17
  • 打赏
  • 举报
回复
像我发的图片的那种样式
xiaobayi95 2020-01-17
  • 打赏
  • 举报
回复
引用 2 楼 贵阳老马马善福专业维修游泳池堵漏防水工程 的回复:
完整代码:https://download.csdn.net/download/caozhy/12104973

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For i = 1 To 20
Dim vscr = New VScrollBar()
With vscr
.Left = i * 30 + 20
.Width = 20
.Height = Panel1.Height - 80
.Top = 40
.Name = "vs" & i
.Visible = True
.Maximum = 200
.Minimum = 0
.SmallChange = 1
.Value = Int(Math.Sin(2 * 3.1416 / 20 * i) * 50 + 100)
End With
Panel1.Controls.Add(vscr)
Next
VScrollBar1.Minimum = 0
VScrollBar1.Maximum = 200
VScrollBar1.SmallChange = 1
oldval = 100
VScrollBar1.Value = 100
End Sub

Private oldval As Integer

Private Sub VScrollBar1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VScrollBar1.ValueChanged
Dim vb1 As Integer = VScrollBar1.Value
For Each vs As VScrollBar In Panel1.Controls.OfType(Of VScrollBar)()
Dim newval As Integer = vb1 - oldval + vs.Value
If newval > vs.Maximum Then newval = vs.Maximum
If newval < vs.Minimum Then newval = vs.Minimum
vs.Value = newval
Next
oldval = VScrollBar1.Value
End Sub
End Class


再请教一下,我想把每个滑轮的值分开输进去,改变后再导出来,应该怎么改代码呢
threenewbee 2020-01-15
  • 打赏
  • 举报
回复
完整代码:https://download.csdn.net/download/caozhy/12104973

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For i = 1 To 20
Dim vscr = New VScrollBar()
With vscr
.Left = i * 30 + 20
.Width = 20
.Height = Panel1.Height - 80
.Top = 40
.Name = "vs" & i
.Visible = True
.Maximum = 200
.Minimum = 0
.SmallChange = 1
.Value = Int(Math.Sin(2 * 3.1416 / 20 * i) * 50 + 100)
End With
Panel1.Controls.Add(vscr)
Next
VScrollBar1.Minimum = 0
VScrollBar1.Maximum = 200
VScrollBar1.SmallChange = 1
oldval = 100
VScrollBar1.Value = 100
End Sub

Private oldval As Integer

Private Sub VScrollBar1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VScrollBar1.ValueChanged
Dim vb1 As Integer = VScrollBar1.Value
For Each vs As VScrollBar In Panel1.Controls.OfType(Of VScrollBar)()
Dim newval As Integer = vb1 - oldval + vs.Value
If newval > vs.Maximum Then newval = vs.Maximum
If newval < vs.Minimum Then newval = vs.Minimum
vs.Value = newval
Next
oldval = VScrollBar1.Value
End Sub
End Class

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧