Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2011, 15:22   #11
waka2ebawer
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 46
По умолчанию

знаю там одно copy-past
но все же что не так
p.s. у меня там загружается как из listbox'a так и есть просто кнопка Загрузить

p.s.s. создайте в корне папку и в ней должны быть звуки
и через comboBox заргужать
и проблема то из комбобокса в листбокс а из листбокса должно по кнопкам распдередялть и по mediaplayer который mp
но mp не видит ничего так как у него загрузка из fullname
Вложения
Тип файла: rar ТрекБот.rar (12.7 Кб, 6 просмотров)

Последний раз редактировалось waka2ebawer; 09.04.2011 в 15:25.
waka2ebawer вне форума Ответить с цитированием
Старый 09.04.2011, 16:04   #12
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Посмотрел код
1. Программа при старте выбирает все файлы в своём корне. Не есть правильно. Более того - готова принять любые файлы, ограничений нет. Аналогично при открытии файла и, как результат, Кря в обработчиках.
2. Для каждой кнопки свой обработчик, хотя действия абсолютно одинаковы. Сделайте один обработчик для группы аналогичных - один код, меньше программа, проще отладка.
3. Зачем столько медиаплееров? Совместное воспроизведение всего и вся?
4. Зачем все эти кнопки? Вы собираетесь загрузить плейлист и воспроизвести? Так масса аналогичного - посмотрите их интерфейс и для начала попробуйте воспроизвести нечто похожее.
5. Зачем двадцать диалогов открытия файла. Создавайте каждый раз новый в обработчике, а по окончании работы разрушайте его
6. Но прежде всего - форматируйте правильно код. Для начала просто войдите в один из модулей исходников и пишите по аналогии. Вам же будет легче.
ReportCube вне форума Ответить с цитированием
Старый 09.04.2011, 17:11   #13
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

ОК, понятно. Смотрим обработчик Button41Click, где создаётся массив размерностью в 20 элементов.
Код:
  
  for i := 0 to ListBox1.Items.Count - 1 do begin
     B := FindComponent('Button' + IntToStr(i+1)) as TButton;
     M := FindComponent('mp' + IntToStr(i+1)) as TMediaPlayer;
     if (nil <> B) then // Отлично, нашли Button22 кнопку
     begin
        //Что будет здесь? В массиве всего 20
       fullname[i+1] := ListBox1.Items[i];
       B.Caption := ExtractFileName(fullname[i+1]) + ' Play';
     end;
  end;
ReportCube вне форума Ответить с цитированием
Старый 10.04.2011, 21:39   #14
waka2ebawer
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 46
По умолчанию

Цитата:
Сообщение от ReportCube Посмотреть сообщение
ОК, понятно. Смотрим обработчик Button41Click, где создаётся массив размерностью в 20 элементов.
Код:
  
  for i := 0 to ListBox1.Items.Count - 1 do begin
     B := FindComponent('Button' + IntToStr(i+1)) as TButton;
     M := FindComponent('mp' + IntToStr(i+1)) as TMediaPlayer;
     if (nil <> B) then // Отлично, нашли Button22 кнопку
     begin
        //Что будет здесь? В массиве всего 20
       fullname[i+1] := ListBox1.Items[i];
       B.Caption := ExtractFileName(fullname[i+1]) + ' Play';
     end;
  end;
ты вообще видел форму?
баттон22 вообще какая?
у меня там все нормально 20 под музыку
и другие 20 под загругку через диалог
waka2ebawer вне форума Ответить с цитированием
Старый 11.04.2011, 10:54   #15
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Форму видел и не понял твоё возмущение. Повнимательнее! Мне, в общем то, всё равно, можешь оставить всё "как есть".
В директории оказалась сотня файлов, список которых аккуратно загрузился в TListBox. Запускаем цикл, ищем по имени TButton. Твой цикл что-нибудь знает о "20 под музыку и других 20 под загрузку через диалог"? Думать надо, а не обижаться
ReportCube вне форума Ответить с цитированием
Старый 11.04.2011, 16:14   #16
waka2ebawer
Пользователь
 
Регистрация: 06.10.2009
Сообщений: 46
По умолчанию

я понимаю , и я потом все сделаю и ограничение по файлам и по расширению, но мне надо понять как сделать чтобы из ListBox'a загружалось в 20 плееров,( и мне надо чтобы не один плеер был а именно несколько чтобы поточно воспроизводить)
waka2ebawer вне форума Ответить с цитированием
Старый 11.04.2011, 18:18   #17
ReportCube
Форумчанин
 
Аватар для ReportCube
 
Регистрация: 11.03.2011
Сообщений: 426
По умолчанию

Ещё раз - читайте и думайте. В потоках VCL не работают(!!!), в том числе и медиаплееры, именно поэтому 20 штук на форме абсолютно бесполезны. В цикле проверяйте размерность массива - при превышении выходите из цикла. Если рядом с Вами есть кто-нибудь - покажите ему Вашу форму и спросите: "Зачем нужно вот это?", а потом ещё раз подумайте.
ReportCube вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка файлов на сайт grafgrial Работа с сетью в Delphi 3 16.02.2011 19:04
Загрузка файлов pavelslap PHP 8 14.01.2011 09:05
загрузка файлов Dimarik PHP 3 17.07.2010 23:41
Загрузка файлов + ProgressBar record222 Общие вопросы Delphi 4 18.04.2010 18:27
Загрузка файлов Vladya Помощь студентам 3 01.07.2009 08:34