Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как добавить нужную строку в memo 
:(
    Опции темы
Volkogriz
  Дата 2.12.2008, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: нет
Всего: 1



Доброе время суток!!!
Проблема такого плана,
В ListBox загружается список найденных файлов в определённой папке!
Как сделать так чтобы при клике на имя определенного файла В ListBox-се, в memo Выводился путь + имя файла!  smile 
Заранее благодарю!
С уважением Volkogriz
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Akella
Дата 2.12.2008, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 8
Всего: 329



А где ты хранишь путь + имя? Ты а листбокс только имя загружаешь?
Тебе нужно заранее позаботиться о хранении пути, например в массиве.


Добавлено @ 22:26
Тебе нужно было в этой тебе задавать вопрос:
http://forum.vingrad.ru/forum/forum-331.html

Добавлено через 5 минут и 10 секунд
1. создаешь массив.
2. при сканировании папки заносишь имя в листбокс, а в массив путь без имени
3. при клике на листбокс склеиваешь значение из массива и значение из листбокса и заносишь в мемо

Добавлено через 9 минут и 13 секунд
что у тебя не получается? какие ошибки? выкладывай код, посмотрим

Это сообщение отредактировал(а) Akella - 2.12.2008, 22:27
PM MAIL   Вверх
Volkogriz
Дата 2.12.2008, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: нет
Всего: 1



Мне надо сделать примерно следующие:
Чтобы в мемо при клике по определёной строке в ListBox-се выводилась вот что:
Код

[Articles 001]
Category = "xxx"
Name = "Программа xxx"
Pictur = "xxx\xxx.jpg"
Descript = ""
Path = "xxx\xxx.exe"
Plugin = ""
Plugins = ""
Description = "xxx\xxx.rtf"

Но разабрался я только с этим:
Код

Path = "xxx\xxx.exe" 
  
А код такой:
Код

procedure ListFileDir(Path: string; FileList: TStrings);
 var
   SR: TSearchRec;
 begin
   if FindFirst(Path + '*.*', faAnyFile, SR) = 0 then
   begin
     repeat
       if (SR.Attr <> faDirectory) then
       begin
         FileList.Add(SR.Name);

       end;
     until FindNext(SR) <> 0;
     FindClose(SR);
   end;
 end;


procedure TForm1.Button1Click(Sender: TObject);
begin
ListFileDir(extractfilepath(Application.ExeName), Form1.ListBox1.Items);
end;

Procedure TForm1.ListBox1Click(Sender: TObject);
Begin
Memo1.Lines.Add('Path= "'+extractfilepath(Application.ExeName)+PChar(ListBox1.Ite[ListBox1.ItemIndex])+'"');

End;


Вобщем в одной папке лежат, xxx.rtf, xxx.jpg, xxx.exe...
хочется чтобы программа сама записала всё попарядку как написано выше!!!
Но я не знаю как это реалезовать!(((

Это сообщение отредактировал(а) Volkogriz - 2.12.2008, 23:22
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Akella
Дата 2.12.2008, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 8
Всего: 329



а где массив? я ж тебе про массив не зря сказал smile

Добавлено через 3 минуты и 8 секунд
Код

объявляешь динамический массив строк, благо что в тырнете хватает инфы по работе с динамическими массивами

begin
         FileList.Add(SR.Name);
--> здесь в массив заносишь путь типа
SetLegth(arr, Legth(i)+1)
aar[Legth(i)-1] := Path;

       end;


Добавлено через 10 минут и 41 секунду
Получается, что?

Код

  Memo1.Lines.Add('Path= "' + arr[ListBox1.ItemIndex] + (ListBox1.Items[ListBox1.ItemIndex])+'"');


Добавлено через 12 минут и 16 секунд
Ладно, до завтра smile не додумаешься, попробую написать что-нить, но ты постарайся сам, что понял, а то если будут теюе всё время готовые коды давать, то ты перестанешь соображать  smile , вот как я smile 
PM MAIL   Вверх
Volkogriz
Дата 3.12.2008, 01:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: нет
Всего: 1



Попытаюсь разобраться СПАСИБО!!! smile 
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Volkogriz
Дата 3.12.2008, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: нет
Всего: 1



Добрый вечер!!!
Невышло у меня не чего!!! smile 
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Christoph
Дата 3.12.2008, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 5
Всего: 11



Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Memo1: TMemo;
    ListBox1: TListBox;
    procedure ListFileDir(Path:string);
    procedure ListBox1DblClick(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  StrLB: TStringList;
implementation

{$R *.dfm}

procedure TForm1.ListFileDir(Path:string);
Var 
  SR:TSearchRec;
  FindRes:Integer;
begin
  ListBox1.Clear;
  Path:=Edit1.Text;
  FindRes:=FindFirst(Path+'*.*',faAnyFile,SR);
    While FindRes=0 do
      begin
          ListBox1.Items.Add(SR.Name);
          StrLB.Add(Path+SR.Name);
         FindRes:=FindNext(SR);
     end;
FindClose(SR);
end;



procedure TForm1.ListBox1DblClick(Sender: TObject);
var
  Format:String;
begin
    Format:=StrLB.Strings[ListBox1.ItemIndex];
    Memo1.Lines.Add('Category = xx'+sLineBreak+'Name = '+ ExtractFileName(Format));
end;

procedure TForm1.Edit1Exit(Sender: TObject);
begin
  ListFileDir(Edit1.Text);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  StrLB:=TStringList.Create();
  Memo1.Clear;
end;

end.


Ниже выкладываю проект...

Если надо разное описание для каждого формата используй case и ExtractFileExt(Format)



Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  ListFileDir.rar 178,76 Kb


--------------------
user posted image
PM MAIL ICQ   Вверх
Christoph
Дата 4.12.2008, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 5
Всего: 11



Спасибо Rrader'y что б не выводилось в листбокс точка и две точки, надо сделать фильрацию, и процедура ListFileDir перепишиться так: 

Код

procedure TForm1.ListFileDir(Path:string);
Var SR:TSearchRec;
    FindRes:Integer;
begin
  ListBox1.Clear;
  Path:=Edit1.Text;
  FindRes:=FindFirst(Path+'*.*',faAnyFile,SR);
    While FindRes=0 do
      begin
        if (SR.Name <> '.') and (SR.Name <> '..') then
          ListBox1.Items.Add(SR.Name);
          StrLB.Add(Path+SR.Name);
         FindRes:=FindNext(SR);
     end;
  FindClose(SR);
end;



--------------------
user posted image
PM MAIL ICQ   Вверх
THandle
Дата 4.12.2008, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 50
Всего: 372



Christoph, все ж уже давно есть)

http://forum.vingrad.ru/sources/topic-2051...y1471235/0.html
PM   Вверх
Christoph
Дата 4.12.2008, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 5
Всего: 11



Так что я зря старался?  smile 


--------------------
user posted image
PM MAIL ICQ   Вверх
Akella
Дата 4.12.2008, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 8
Всего: 329



Цитата(Volkogriz @  3.12.2008,  17:42 Найти цитируемый пост)
Невышло у меня не чего

ты хоть бы код показал, что вышло, а что не вышло
PM MAIL   Вверх
Volkogriz
Дата 7.12.2008, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: нет
Всего: 1



Доброе время суток!!!
Всем огромное спасибо буду разбераться!!!
Извините но у меня инет отключали только мвключили!!!(((
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0806 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.