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

Вниз

List Box   Найти похожие ветки 

 
lobach ©   (2006-09-11 08:59) [0]

Здраствуйте мастера, у меня такой вопрос:
У меня есть форма, на ней ListBox и кнопка, необходимо получить в ListBox"е список файлов какой-нибудь папки, например "c:/123". При нажатии кнопки выделенный файл должен запустится, подскажите как это организовать.


 
PSPF2003 ©   (2006-09-11 09:08) [1]

FindFirst();
FindNext();
ShellExecute();


 
lobach ©   (2006-09-11 11:24) [2]

Это типа цикл нужен???


 
Dmitrij_K   (2006-09-11 11:27) [3]

Поиск по форуму, в справке, в яндексе, гугле спасет ОРД


 
MBo ©   (2006-09-11 11:28) [4]

Да можно и без цикла, с использованием сообщения LB_DIR, но FindFirst все равно надо научиться пользоваться


 
lobach ©   (2006-09-11 12:10) [5]

А можно пример??


 
Dmitrij_K   (2006-09-11 12:11) [6]


> А можно пример??

см. [3]


 
PSPF2003 ©   (2006-09-11 12:21) [7]

procedure TForm1.Button1Click(Sender: TObject);
var
 SearchRec: TSearchRec;
begin
 ListBox1.Clear;
 if FindFirst("c:" + "*.*", faAnyFile, SearchRec) = 0 then begin
   if (SearchRec.Name <> ".") or (SearchRec.Name <> "..") then
   ListBox1.Items.Add(SearchRec.Name);
   while (FindNext(SearchRec) = 0) do
     ListBox1.Items.Add(SearchRec.Name);
 end;
end;

procedure TForm1.ListBox1DblClick(Sender: TObject);
begin
   if not (ShellExecute(Application.Handle, "open", PChar(ListBox1.Items[ListBox1.itemindex]), nil, PChar(ExtractFileDir(ListBox1.Items[ListBox1.itemindex])), SW_NORMAL) > 32) then
     WinExec(PChar("rundll32.exe shell32.dll,OpenAs_RunDLL " + ListBox1.Items[ListBox1.itemindex]), SW_NORMAL )
end;


 
lobach ©   (2006-09-11 18:51) [8]


> PSPF2003

Спасибо за пример, всё нормал, принцип понял, список файлов получает, но сам файл не открывает, просто не находит, из за чего это???


 
lobach ©   (2006-09-11 19:02) [9]

Еще такая фишка, сохранил проэкт, запустил его, и всё начало работать, но ищет файлы в своём каталоге, находит сам себя и свои исходники. Фантастика!!!


 
Джо ©   (2006-09-11 19:04) [10]

> [9] lobach ©   (11.09.06 19:02)
> Фантастика!!!

Отнюдь нет. Где ищешь, там и находит.


 
Джо ©   (2006-09-11 19:04) [11]

> [8] lobach ©   (11.09.06 18:51)
> Спасибо за пример, всё нормал, принцип понял, список файлов
> получает, но сам файл не открывает, просто не находит, из
> за чего это???

Что значит "не запускает"? Как ты его "запускаешь"?


 
lobach ©   (2006-09-11 19:19) [12]


> [8]


> [9]

Извините за кипиш, сам разобрался

procedure TForm1.Button2Click(Sender: TObject);
begin
if not (ShellExecute(Application.Handle, "open", PChar(ListBox1.Items[ListBox1.itemindex]), nil, PChar(ExtractFileDir(ListBox1.Items[ListBox1.itemindex])), SW_NORMAL) > 32) then
WinExec(PChar("rundll32.exe shell32.dll,OpenAs_RunDLL " + "D:\" + ListBox1.Items[ListBox1.itemindex]), SW_NORMAL )
end;


Путь не прописал...


 
NickCoder ©   (2006-09-21 21:26) [13]

А не легче ли FileListBox взять!
Там уж через FileName все сделать!


 
lobach ©   (2006-09-22 05:37) [14]


> FileListBox

Сеичас поглядим...



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

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

Наверх




Память: 0.49 MB
Время: 0.031 c
3-1155102872
rsa_
2006-08-09 09:54
2006.10.08
подскажите что делать с unicode в delphi.


2-1158512443
ec_stasis
2006-09-17 21:00
2006.10.08
Поменять длину массива


2-1158765927
Makcim
2006-09-20 19:25
2006.10.08
ListBox


2-1158733722
TrainerOfDolpins
2006-09-20 10:28
2006.10.08
Как приложению узнать, где его exe-файл?


15-1158509360
dreamse
2006-09-17 20:09
2006.10.08
За какое время сможете найти ответ в приколе ?