Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.18;
Скачать: CL | DM;

Вниз

самонахождение файлов *.bmp   Найти похожие ветки 

 
clampo ©   (2004-07-03 12:12) [0]

Подскажите, пожалуйста решить проблему:
У меня в плеере скинка - это бмп-файл под опред. названием
и при загрузке плеер его находит и загружает. А как сделать так
чтобы при вызывании опред. меню в нём отображался список
бмп файлов находящихся в папке ../Skins. А при клике на выбранный файл (из этого меню) он загружался в обложку плеера


 
Рамиль ©   (2004-07-03 12:40) [1]

opSkin: TOpenDialog;
....
if  opSkin.Execute then
begin
 Skin := opSkin.FileName;
end;


 
Рамиль ©   (2004-07-03 12:41) [2]

Не дочитал:)
Тогда не так, находишь все файлы и динамически добавляешь пунты меню.


 
Cardinal ©   (2004-07-03 15:04) [3]

>Рамиль ©   (03.07.04 12:41) [2]
Думаю, автору вопроса это очень поможет :->

function ScanDir(SkinMenu: tmenuitem; SetSkin: TNotifyEvent; StartDir: string;
        Mask: string = "*.*"; FindNested: boolean = false): integer;
var
 SearchRec: TSearchRec;
 newitem: tmenuitem;
begin
result:=0;
if StartDir[Length(StartDir)] <> "\" then StartDir := StartDir + "\";
if FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then
 begin
 repeat
  Application.ProcessMessages;
  if (SearchRec.Attr and faDirectory) <> faDirectory then
    begin
    newitem := tmenuitem.create(nil);
    newitem.Caption := StartDir + extractfilename(SearchRec.Name);
    newitem.Hint := StartDir + extractfilename(SearchRec.Name);
    newitem.OnClick := setskin;
    skinmenu.Add(newitem);
    inc(result);
    end
  else
    if FindNested then
     if (SearchRec.Name <> "..") and (SearchRec.Name <> ".") then
      begin
      newitem := tmenuitem.create(nil);
      newitem.Caption := StartDir + SearchRec.Name + "\";
      newitem.Hint := StartDir + SearchRec.Name + "\";
      newitem.OnClick := setskin;
      skinmenu.Add(newitem);
      ScanDir(SkinMenu,setskin,StartDir + SearchRec.Name + "\",Mask);
      end;
 until FindNext(SearchRec) <> 0;
 FindClose(SearchRec);
 end;
end;

procedure TForm1.setscinclick(Sender: TObject);
begin
{Устанавливаем скин с именем tmenuitem(sender).hint}
end;


Чтобы заполнить у меню, к примеру n4, субменю пунктами с bmp-скинами из папки "c:\skins", надо выполнить

scandir(n4,setscinclick,"c:\skins","*.bmp",false);



Страницы: 1 вся ветка

Текущий архив: 2004.07.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1088507553
QuasiLamo
2004-06-29 15:12
2004.07.18
Срочно! Нужен кто-нибудь русскоговорящий


1-1089130421
rolex
2004-07-06 20:13
2004.07.18
Как узнать находится ли курсор на PopupMenu или нет???


3-1087914032
TUser
2004-06-22 18:20
2004.07.18
FieldByName vs FieldValues


1-1088704420
Roland88
2004-07-01 21:53
2004.07.18
Сортировка содержимого таблицы по алфавиту


1-1089044565
debuger
2004-07-05 20:22
2004.07.18
Работа с Сюшными дллками