![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Directory
МегаПупс © (2006-01-23 14:59:00)Как сделать нечто, как в инталяторах выбор папки
с помощью компонентов suiDirectoryListBox и suiDriveComboBox
библиотеки suiPack. Надо чтоб при смене диска в КомбоБоксе открывался
этот диск в ЛистБоксе. Как это можно реализовать???
МегаПупс (2006-01-24 17:42:00) [1]А как наложить защиту на открытие съемных дисков если они не вставлены,
что-то типа:
procedure TForm1.DriveComboBoxChange(Sender: TObject);
begin
try
--------<
except
BEEP;
exit;
end;
end;
Что писать в разделе "Попробуй"?
МегаПупс (2006-01-24 17:16:00) [2]Да, ребят, извините! Спешил очень:)
Спасибо большое!!!
ЗЫ: А слеш там все таки не нужен :)
МегаПупс (2006-01-24 17:16:00) [3]Да, ребят, извините! Спешил очень:)
Спасибо большое!!!
ЗЫ: А слеш там все таки не нужен :)
Джо (2006-01-24 16:45:00) [4]> [16] МегаПупс (24.01.06 16:41)
Ты вообще ответы читаешь?
Плохиш (2006-01-24 16:45:00) [5]
> МегаПупс (24.01.06 16:41) [16]
Читай два предыдущих поста до полного просветления.
МегаПупс (2006-01-24 16:41:00) [6]Не знаю что это и зачем и куда его вставлять (FindClose(SearchRec)) но у меня в принцепи работает моя процедура если ей адресс в начале задать,
а считывать путь с ЛистБокса не хочет. Почему??
Выкладываю полный код. Постарайтесь найти ошибку пожаловста:
procedure TForm1.PlayList(Path: string);
var
SearchRec: TSearchRec;
begin
ListBox1.Clear;
if FindFirst(Path + '*.mp3', faAnyFile, SearchRec) = 0 then
begin
ListBox1.Items.Add(SearchRec.Name);
while (FindNext(SearchRec) = 0) do
begin
ListBox1.Items.Add(SearchRec.Name);
end;
end;
ListBox1.ItemIndex := 0;
try
MediaPlayer1.Play
except
lbFileName.Caption := '';
MediaPlayer1.Stop;
exit;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
SoundPath := ExtractFilePath(ParamStr(0)) + '\Musik\';
PlayList(SoundPath);
end;
procedure TForm1.btOkDirClick(Sender: TObject);
begin
PlayList(DirectoryListBox1);
end;
Процедура ФормКреате список формирует, а
БатонКлик нет :( Почему???
Джо (2006-01-24 15:57:00) [7][12] МегаПупс
> SoundPath + '*.mp3'
Кажись, слэш забыл.
Плохиш (2006-01-24 15:56:00) [8]
> SoundPath := IncludeTrailingPathDelimiter(DirectoryListBox1.Directory);
EvS (2006-01-24 15:45:00) [9]FindClose(SearchRec) забыл
МегаПупс (2006-01-24 15:32:00) [10]Извините за прошлый пост. Он был написан в порыве гнева. Там написана чушь, поэтому лучше его не читайте;)
Помогите в следующем. Надо по клику на кнопке сформировать ПлейЛист из найденных
мп3 файлов в директории указанной DirectoryListBox.
Почему не воспринимается код? В чем ошибка??
procedure TForm1.Button1Click(Sender: TObject);
var
SearchRec: TSearchRec;
SoundPath: String;
begin
SoundPath := DirectoryListBox1.Directory;
if FindFirst(SoundPath + '*.mp3', faAnyFile, SearchRec) = 0 then
begin
ListBox1.Items.Add(SearchRec.Name);
while (FindNext(SearchRec) = 0) do
begin
ListBox1.Items.Add(SearchRec.Name);
end;
end;
end;
МегаПупс (2006-01-24 14:17:00) [11]Я так понял что когда Лист и Комбо Боксы объединяншь, то происходит что-типа наследования классов (или как это называется на Паскале?) поэтому нужно менять обращение к компоненту. Но как?? Помогите !
МегаПупс (2006-01-23 22:02:00) [12][Pascal Error] UnitOBG.pas(1): Unable to invoke Code Completion due to errors in source code
В смысле вот полное название ошибки:(
Плохиш (2006-01-23 21:46:00) [13]
> Pascal Error
Это ещё, что за новая ошибка?
МегаПупс (2006-01-23 20:57:00) [14]Как искать *.mp3 я уже в принципи знаю. Но как присвоить переменной SoundPath полный путь из DirectoryListBox.
На SoundPath := DirectoryListBox.Directory пишет Pascal Error
Может че посоветуете???
МегаПупс (2006-01-23 18:35:00) [15]Как по выбранному в этой системе адресу найти все mp3 файлы. А путь присвоить переменной SoundPath ??
МегаПупс (2006-01-23 17:33:00) [16]To: Джо
Спасибо! Все так, все так! :)
Джо (2006-01-23 15:36:00) [17]> [3] МегаПупс (23.01.06 15:16)
У компонентов на вкладку Win 3.1 (TDirectoryListBox, TDriveComboBox) есть соответствующие свойста для установления связи между ними.
Например у компонента TDriveComboBox есть свойство DirList, ему назначаешь экз. TDirectoryListBox и происходит желаемое.
Насчет загадочных компонентов SuiPack ничего сказать не могу, я их в глаза не видел. Но вероятно, в них используется похожая схема.
МегаПупс (2006-01-23 15:17:00) [18]To Плохишь
Да Именно!!
МегаПупс (2006-01-23 15:16:00) [19]Компоненты я уже нашел на вкладке SuiPack. Мне с ними надо работать.
Хотя в принцепи это одно и тоже. Как сделать как я сказал. Помогите пожа...
Плохиш (2006-01-23 15:16:00) [20]
> Надо чтоб при смене диска в КомбоБоксе открывался
> этот диск в ЛистБоксе. Как это можно реализовать???
"при смене диска в КомбоБоксе" говоришь "ЛистБоксу", что надо открыть список для такого-то Drive.