怎么利用ListBox实现媒体文件的循环播放?

解决方案 »

  1.   

    在搜索时曾看到过这种类似问题:)
    源于我也是菜鸟,所以没法子帮你。你再搜索一下,关键字是MEDIAPLAY或者是循环
      

  2.   

    简单一点,可以设置一个全局变量g_nIndex,然后在判断一首歌的状态为播放完毕的时候写语句:
    if g_nIndex = ListBox1.Items.Count - 1 then
    begin
      g_nIndex := 0;
      ......
    end
    else
      Inc(g_nIndex);
    PlaySong(g_nIndex);
    g_nIndex的值实际上可以和ListBox的ItemIndex联系起来.
    不知道这样是不是讲清楚了,如果有问题可以再讨论!
      

  3.   

    var
      i: integer;
      Filename: string;
    begin
      //是否单首循环
      if (Listbox1.ItemIndex = -1) and (States = 0) then
      begin
        exit;
      end;
      if (MenuRepeatOne.Checked = true) and (States = 0) then
        i := 0
          //判断当前播放是否小于全部数目,如果小于,则继续往下播放
      else if Playingindex < Listbox1.Items.Count - 1 then
        i := 1
          //若当前播放大于等于最大数,则判断是否有重复全首,
      //有重复全部,则从0开始,没有则退出
      else if MenuRepeatAll.Checked = true then
        i := -PlayingIndex
      else
        Exit;
      Listbox1.ItemIndex := PlayingIndex + i;
      //  MSGBOX(PlayListItem^.Filename+' old');
    不知能否看懂^^