首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成一定数量的数字之后的随机循环

生成一定数量的数字之后的随机循环
EN

Stack Overflow用户
提问于 2014-03-15 21:36:10
回答 1查看 26关注 0票数 1

我试着按随机顺序播放歌曲,在播放完所有歌曲后,所有歌曲都变成nextMusic.WasPlayed = False,随机数生成器继续生成数字,但是当它再次播放一些歌曲之后,生成器进入循环,不停地生成数字。

代码语言:javascript
复制
     Dim RanTrack As Random = New Random(TimeOfDay.Millisecond)
     Private Sub nextBTN_Click(sender As Object, e As EventArgs) Handles nextBTN.Click
        If My.Settings.Shufle = True Then
  generateNumber:
            Dim trackN As Integer = RanTrack.Next(musicControl.Controls.Count - 1)
                Debug.WriteLine("number " & trackN)
                Dim nextMusic As MusicItem = musicControl.Controls.Item(trackN)
                If nextMusic.WasPlayed = False Then
                    nextMusic.PlayMusic()
                Else
                    GoTo generateNumber
                End If
         End If
      End Sub
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-15 23:48:53

试着做这样的事情:

代码语言:javascript
复制
Dim RanTrack As Random = New Random()
Private Sub nextBTN_Click(sender As Object, e As EventArgs) Handles nextBTN.Click
    If My.Settings.Shufle = True Then
        Dim nextMusics = ( _
            From nextMusic In musicControl.Controls.Cast(Of MusicItem)() _
            Where nextMusic.WasPlayed = False _
            Order By RanTrack.NextDouble() _
            Select nextMusic).ToArray()
        If nextMusics.Any() Then
            nextMusics(0).PlayMusic()
        End If
    End If
End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22430052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档