Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 2
Всего онлайн: 2
Зарегистрировано юзеров: 6619
Комментариев на сайте: 650
Новый юзер: Dysonetn



Последние комментарии
c
dealrattKi прокомментировал "Урок 3 - Конструкция IF...THEN...ELSE":
Это действительно радует меня. --- Бесподобное сообщение скачать fifa, скачать фифа а также [url=http://15fifa.ru/novosti-fifa-15]fifa 15 последние новости[/url] скачать фифа
intatryadebra прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
Revival RO is best free ro populair ragnarok online private server founded in 2017 2018. Revival pvp big free Ragnarok server is an online exciting free MMORPG called ragnarok online, it a fun server for MMORPG gamers in ASIA. This is a top 10 ragnarok online private server thats high on the list and top ranking with massive players online. We have many players from Asia like Malaysia, Indonesia, Philippines, Thailand, Singapore, China, Hong Kong All these players are here to play free private ragnarok online server and battle players all around the world. They want to collect the best items and gear to be strongest in War of Emperium, War of Emperium are guild wars in this free RO Server. You can play this game on android phone or tablet or pc client. Enjoy And have fun. ragnarok online server http://bit.ly/2tKyawS

Урок 46 - Пишем MediaPlayer, часть(6/7)

   В этом уроке мы сделаем сохранение плей-листа в файл и его загрузку.

   Начнём, вытащим 2 кнопочки на форму "Открыть" и "Сохранить":

Внешний вид


   И создаем обработчик на кнопке "Сохранить" и пишем код:
procedure TForm1.Button8Click(Sender: TObject);
begin
	ListBox2.Items.SaveToFile('C:\List.txt'); // Сохраняем плей-лист
end;
   И сразу сделаем загрузку, в обработчике на кнопке "Открыть" пишем:
procedure TForm1.Button7Click(Sender: TObject);
var 
	i: integer;
begin
	ListBox2.Items.LoadFromFile('C:\List.txt'); // Загружаем
	ListBox1.Items.LoadFromFile('C:\List.txt'); // файл
	
	for i:=0 to ListBox1.Items.Count-1 do // Оставляем в первом ListBox'e только имена файлов
		listBox1.items.strings[i]:=Extractfilename(ListBox1.items.strings[i]);
end;
   Проверим. Добавим... Сохраним... Загрузим...

Внешний вид


   Работает, на диске "С" создается файл "List.txt" с добавленными треками, но если пользователь захочет сохранить несколько плей-листов, у него ничего не получится, файл будет каждый раз переписываться, заменяя старые песни. Добавим возможность выбора пути для сохранения и загрузки плей-листа. Вытащим 2 компонента: TOpenDialog и TSaveDialog, изменим обработчики сохранения и открытия, просто замени путь который мы указали сами на путь из диалогов:
	if SaveDialog1.Execute = true then
		ListBox2.Items.SaveToFile(SaveDialog1.FileName); // Сохраняем плей-лист
 
   И:
procedure TForm1.Button7Click(Sender: TObject);
var 
	i: integer;
begin
	if OpenDialog2.Execute = false then exit;
	
	ListBox2.Items.LoadFromFile(OpenDialog2.FileName); // Загружаем
	ListBox1.Items.LoadFromFile(OpenDialog2.FileName); // файл
	
	for i:=0 to ListBox1.Items.Count-1 do // Оставляем в первом ListBox'e только имена файлов
		listBox1.items.strings[i]:=Extractfilename(ListBox1.items.strings[i]);
end;
 
   Вот и все, плеер почти готов, осталось только добавить Drag-and-drop и кое-что подправить в интерфейсе, это мы сделаем в следующем уроке.

Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 31 Мая 2013
Просмотров: 7040

Урок 45 - Пишем MediaPlayer, часть(5/7) Урок 47 - Пишем MediaPlayer, часть(7/7)

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавил: Programer [Новичок] Дата: 2013-06-04
Кто знает как написать программу которая измеряет скорость интернета?




аватар Добавил: Mikhail [Новичок] Дата: 2013-06-08
А как сделать так чтоб в плей листе само по порядку проигрывала чтоб самому не нажимать на каждую песню а то все испробовал чего то не получается




аватар Добавил: Admin [Сэнсэй] vk.com/savelev_a_y Дата: 2013-06-09
Вытащить на форму таймер и написать в него: if (Bass_ChannelisActive(stream)= BASS_ACTIVE_STOPPED) and (ListBox1.Items.Count > 1) and (ListBox1.ItemIndex < ListBox1.Items.Count-1) and (ListBox1.ItemIndex > -1) then begin ListBox1.ItemIndex:= ListBox1.ItemIndex+1; PlayItem(ListBox1.ItemIndex); end;




аватар Добавил: Mikhail [Новичок] Дата: 2013-06-09
Большое спасибо Admin получилось