Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.028 c
15-1157999045
DillerXX
2006-09-11 22:24
2006.10.08
Рисуете ли вы блок-схемы при написании программ?


2-1158382491
Arazel
2006-09-16 08:54
2006.10.08
Народ кто небудь пробывал работать с USB флешь носителями


3-1154686580
APXi
2006-08-04 14:16
2006.10.08
Как реализовать табличную часть?


1-1156420386
gear
2006-08-24 15:53
2006.10.08
Как скрыть кнопку на панели задач у вторичной формы, если для ней


2-1158484364
dreamse
2006-09-17 13:12
2006.10.08
Ошибка в переборе компонентов




   Наверх