Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Страсти по ListBox


Автор: _nameless 6.5.2007, 22:00
Доброго все вечера...
Прошу прошения....но название тему слегка попутал! smile 
Я новичек...так, что не ругайтесь... smile 
Мысль в следующем...
Нужены примеры работы с ListBox. А конкретно, при нажании Button, в ListBox загружается, к примеру, TXT-файл(в нем сохраненный ранее список файлов( в данном случае *.avi) ). При выборе определенного пункта должен проигроваться соответствующий данному пункту видеофайл[*.avi](все видео находится в конкретной дериктории) на отдельной форме с TMediaPlayer.
Сделал малость и то по кускам...
Как это все грамотно реализовать....принимаются любые советы, примеры, указания!  smile 

Автор: Sunvas 6.5.2007, 23:12
_nameless, делать тут за тебя никто не будет. Помочь-поможем.
Может зря снова медиаплеер делать??
Для начала:
Код

listbox1.items.loadfromfile

Автор: MetalFan 6.5.2007, 23:14
а что конкретно не работает, не получается?
пока каких-то определенных вопросов не наблюдаю

Автор: _nameless 6.5.2007, 23:21
Цитата
_nameless, делать тут за тебя никто не будет

А то я без тебя не знал...умник!
Я просил совет...либо ссылку на нечто подобное, если таковая имеется.
А за совет спасибо{оно мне и надо было}....сейчас поэксперементирую....с этим.

Цитата
Может зря снова медиаплеер делать??


У меня нет более оптимального варианта. Знаний маловато...пока учимся!

MetalFan, трабла в том, как события выбранным пунктам в ListBox примострячить...немогу понять как проиграть эти чертовы avi.

Автор: Albinos_x 7.5.2007, 02:40
Код
...
procedure TForm1.ListBox1Click(Sender: TObject);
begin
if ListBox1.ItemIndex<>-1 then
   ShowMessage('Âû âûáðàëè ñòðîêó ¹ '+IntToStr(ListBox1.ItemIndex)+' è ñòðîêó ñîäåðæàùèþ '+ListBox1.Items.Strings[ListBox1.ItemIndex])
   else
   ShowMessage('Âû íè÷åãî íå âûáðàëè');
end;
...

Автор: lukas 7.5.2007, 06:56
А что там, у листбокса есть обработчики OnClick и OnDbClick  -  юзай на здоровье...


Например:

Код

procedure TForm1.ListBox1DblClick(Sender: TObject);
begin
if fileexists(listbox1.items.strings[listbox1.itemindex]) then  begin

  mp.filename=listbox1.items.strings[listbox1.itemindex];
  mp.open;
  mp.play;
end;
end;


Все легко...

Автор: it_medved 7.5.2007, 18:15
Вы все неправы, с Clist надо работать так - 

Код

CList <CFile> m_ctrlList;
m_ctrlList = new CList();
POSITION pos = m_ctrlList->GetPosition();
CFile file;
for(int i=0; i<m_ctrlList.GetCount(); i++)
{
file = m_ctrlList.GetNext(pos);
}


вот так вот

Автор: _nameless 7.5.2007, 20:52
Спасибо всем, проблема решена своими силами........после бессоной ночи.  smile 
За приведенные примеры, Господа, благодарствую....лишним не будет.  

it_medved, объяснись....подробней.  Это что-то новинькое.  smile 



Автор: skyboy 7.5.2007, 21:22
Цитата(_nameless @  7.5.2007,  19:52 Найти цитируемый пост)
Это что-то новинькое

это "старенькое". Это С++

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)