【发布时间】:2018-01-20 10:26:09
【问题描述】:
我找到了一个示例代码来显示一些图片,最初是幻灯片...问题是它只能向右运行...从第一张图片重新开始正确循环但我找不到相反的方式如果我按左键,则显示最后一张图片...这是正确的代码:
Private Sub ShowNextImage()
'From 0 to _ImageFileNames.Length, use Mod to repeat when past end.
_CurrentImage = (_CurrentImage + 1)
If _CurrentImage = _ImageFileNames.Count Then
_CurrentImage = 0
End If
If Not Me.BackgroundImage Is Nothing Then
DirectCast(Me.BackgroundImage, Image).Dispose()
End If
Me.BackgroundImage = Image.FromFile(_ImageFileNames(_CurrentImage))
End Sub
我试过了,但是不行:
Private Sub ShowPrevImage()
'From 0 to _ImageFileNames.Length, use Mod to repeat when past end.
_CurrentImage = (_CurrentImage - 1)
If _CurrentImage = 0 Then
_CurrentImage = _ImageFileNames.Count
End If
If Not Me.BackgroundImage Is Nothing Then
DirectCast(Me.BackgroundImage, Image).Dispose()
End If
Me.BackgroundImage = Image.FromFile(_ImageFileNames(_CurrentImage))
End Sub
它在右侧和左侧都可以正常工作,除非照片是第一张照片(不要转到最后一张照片!)。
有什么帮助吗?
【问题讨论】:
-
计数从 1 开始。索引是从 0 开始的。我相信你可以从那里弄清楚。
-
@SamAxe 已解决!!!我再次将
CurrentImage = 0更改为CurrentImage = -1和CurrentImage = _ImageFileNames.Count -1现在它可以工作了!!非常感谢 -
请停止在您的标题中添加难度级别和语言标签。这只是与问题无关的噪音(如果它们“简单”,您根本不应该发布;做一些研究和调试并自己修复它)。请阅读How to Ask 并使用tour 或者How Much Research
-
@arc95 干得好!如果你写下你的答案(如下),那么你可以接受它并且可以关闭问题。
标签: vb.net list indexing indexof