Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Плейлист, Аудиоплеер 
:(
    Опции темы
qojqva
Дата 16.5.2013, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 16.5.2013

Репутация: нет
Всего: нет



Здравствуйте,помогите пожалуйста с кодом на удаление записи из моего плейлиста(Listbox1)
Вот, к примеру мой вариант по кнопке delete

Код

  if (e.KeyCode == Keys.Delete)
             {
                 listBox1.Items.Remove(listBox1.SelectedItem);
                
             }

но он работает не так как мне хотелось бы. 
к примеру, в плейлисте 3 песни:1.mp3,2.mp3 и 3.mp3
дак вот,когда мы проигрываем 1.mp3 и к примеру, хотим удалить 2.mp3
удаляем
данный трек действительно удалился из плейлиста,но когда мы нажимаем проигрывать след.трек,то плеер переходит на 2.mp3,хотя мы только что его удалили,что за х
помогите!
PM MAIL   Вверх
Machaon
Дата 18.5.2013, 00:14 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


КаРолЬ АсьКи МуАЛя
*


Профиль
Группа: Участник
Сообщений: 160
Регистрация: 12.8.2008
Где: М.о. Красногорск

Репутация: нет
Всего: 3



Вот набросал проект как раз по той теме что тебе нужно посмотри как я делаю и поймешь:

Код

using System;
using System.Collections;
using System.IO;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class MainFrom : Form
    {
        public ArrayList playlist = new ArrayList();

        public enum Track
        {
            Next, Back, Delete, Random
        }

        public MainFrom()
        {
            InitializeComponent();
        }

        private void Get_Track_Click(object sender, EventArgs e)
        {
            playlist.Clear();
            Get_playlist();
            Update_playList();
        }

        private void Delete_Track_Click(object sender, EventArgs e)
        {
            Play_List(Track.Delete);
        }

        private void Next_track_Click(object sender, EventArgs e)
        {
            Play_List(Track.Next);
        }

        private void Back_track_Click(object sender, EventArgs e)
        {
            Play_List(Track.Back);
        }

        private void Random_Track_Click(object sender, EventArgs e)
        {
            Play_List(Track.Random);
        }

        private void Play_List(Track change_event)
        {
            switch (change_event)
            {
                case Track.Next:
                    if (PlayListBox.SelectedIndex < PlayListBox.Items.Count - 1)
                    {
                        PlayListBox.SelectedIndex = PlayListBox.SelectedIndex + 1;
                    }
                    break;
                case Track.Back:
                    if (PlayListBox.SelectedIndex > 0)
                    {
                        PlayListBox.SelectedIndex = PlayListBox.SelectedIndex - 1;
                    }
                    break;
                case Track.Random:
                    if (PlayListBox.Items.Count > 0)
                    {
                        Random Random_Track = new Random();
                        int track_rnd = Random_Track.Next(0, PlayListBox.Items.Count);
                        PlayListBox.SelectedItem = PlayListBox.Items[track_rnd].ToString();
                    }
                    break;
                case Track.Delete:
                    if (PlayListBox.Items.Count >= 0)
                    {
                        int index = PlayListBox.SelectedIndex;
                        playlist.Remove(PlayListBox.SelectedItem);

                        if (PlayListBox.Items.Count > 1)
                        {
                            
                            if (index == 0) { index = 0; } else { index = index - 1; }
                            Update_playList();
                            PlayListBox.SelectedIndex = index;
                        }
                        else
                        {
                            Update_playList();
                            string[] text = play_status.Text.Split(':');
                            play_status.Text = text[0] + ": Список пуст!";
                        }                    
                    }
                    break;
            }

        }

        private void Get_playlist()
        {
            playlist.AddRange(File.ReadAllLines("playlist.txt", Encoding.GetEncoding(1251)));
        }

        private void Update_playList()
        {
            BindingSource DataBind = new BindingSource();
            DataBind.DataSource = playlist;
            PlayListBox.DataSource = DataBind;
        }

        private void PlayListBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            string[] text = play_status.Text.Split(':');
            play_status.Text = text[0] + ": " + PlayListBox.SelectedItem;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("*****Тут твоя функция для воспроизведения*****\n\r\n\r" + "Выбран элемент: " + PlayListBox.SelectedItem.ToString());
        }



    }
}



А вот сам проект: 


Присоединённый файл ( Кол-во скачиваний: 4 )
Присоединённый файл  TrackList.rar 84,10 Kb
PM MAIL ICQ Skype   Вверх
qojqva
Дата 4.6.2013, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 16.5.2013

Репутация: нет
Всего: нет



я новичок в с# и пока еще не очень разбираюсь
вот мой проект
можно это реализовать как-то в моей программе?

Это сообщение отредактировал(а) qojqva - 4.6.2013, 21:57

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  PAVLVO_MUSIC_PLAYER.rar 401,28 Kb
PM MAIL   Вверх
wester
Дата 5.6.2013, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 675
Регистрация: 27.2.2009

Репутация: 3
Всего: 13



qojqva,  реализовать можно  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0657 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.