Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 101 из 116<  1 ... 98  99  100  101  102  103  104 ... 116  >
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
еще один глупый вопрос, как из листбокса, например по событию OnKeyPress реализовать отображение содержимого тхт файла нах-ся в листбоксе в мемо?

_________________
Я рвусь от новостей так быстро мир стал другой.



Партнер
 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
Ну примерно так:
Код:
If ListBox1.ItemIndex <> -1 Then
Begin
  Memo1.Lines.Clear;
  Memo1.Lines.LoadFromFile(ListBox1.Items[ListBox1.ItemIndex]);
End;

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
Максим спасибо... но у меня файл нах-ся на FTP и при его считывании выходит ощибка о том что системе не удается найти указанный путь..

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
НУ тогда разумеется, что такую ошибку выводит. Тогда тебе загружать файлик c FTP сервака например через стандартные компоненты Indy.

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
Максим ясно, т.е. загружаю с фтп с помощью IdFTP и потом вывожу в мемо, так?

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
да

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
все спасиб
Добавлено спустя 1 час, 50 минут, 53 секунды
Максим , что то никак не получается... пишу следущее
Код:
 if not IdFTP1.Connected
 then Exit;
 Name:=IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].FileName;
 if IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].ItemType=ditDirectory
 then
  If DirectoryListBox.ItemIndex <> -1 Then
  Memo1.Lines.Clear;
  Memo1.Lines.LoadFromFile(DirectoryListBox.Items[DirectoryListBox.ItemIndex]);
end;

выдает все туже ошибку про невозможность найти файл..


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
Ну потому что ты все сделал так же, как написал и я в примере :) Просто использовал другой компонент.
Тебе надо по другому сделать - или загрузить файл в temp директорию (с помощью Idftp) и оттуда его грузить, либо же открыть файл как поток с помощью ftp, и тогда уже грузить потоком в Memo (Memo1.Lines.LoadFromStream(MyStream)).

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
ещё раз спасибо

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
Да не за что, обращайся еще.

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
теперь заработало :
Код:
if not IdFTP1.Connected
 then Exit;
 Name:=IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].FileName;
 if IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].ItemType=ditDirectory
 then
  begin
   //
   ChageDir(Name);
  end
 else
  begin
   try
    SaveDialog1.FileName:=Name;
    if SaveDialog1.Execute
    then
     begin
      IdFTP1.TransferType:=ftBinary;
      BytesToTransfer:=IdFTP1.Size(Name);
      if FileExists(Name)
      then
       begin
        case MessageDlg('Oaeie oaee o?a nouanoaoao, oioeoa i?iaie?eou caa?oceo oaeea?',
            mtConfirmation, mbYesNoCancel, 0) of
          mrYes:
            begin
             BytesToTransfer:=BytesToTransfer-FileSizeByName(Name);
             IdFTP1.Get(Name, SaveDialog1.FileName, false, true);
            end;
          mrNo:
            begin
             IdFTP1.Get(Name, SaveDialog1.FileName, true);
            end;
          mrCancel:
            begin
             Exit;
            end;
       end;
     end
    else IdFTP1.Get(Name, SaveDialog1.FileName, false);
    end;
   finally
   Memo1.Lines.LoadFromFile(Name);

:beer::beer::beer:


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
А зачем SaveDialog то использовал? :) Уж лучше совсем без него.

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
с ним проще
Добавлено спустя 1 минуту, 30 секунд
просто не знал как по другому сделать
Добавлено спустя 1 минуту, 50 секунд
просто я по другому не знал как

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
:) Ясно, мог бы спросить.
Код:
Function MyGetTempPath: String;
Var
  Buffer: Array[0..1023] Of Char;
Begin
  SetString(Result, Buffer, GetTempPath(Sizeof(Buffer) - 1, Buffer));
End;

Function ExtractOnlyFileName(FileName: String): String;
Begin
  Result := ExtractFileName(FileName);
  SetLength(Result, Length(Result) - Length(ExtractFileExt(Result)));
End;

Var
  TempFileName: String;
Begin
  Randomize;
  TempFileName := MyGetTempPath + '\' + ExtractOnlyFileName(Application.ExeName) + IntToStr(Random(1000000)) + '.txt';

  bla bla bla

  IdFTP1.Get(Name, TempFileName, false);

  bla bla bla

  Memo1.Lines.LoadFromFile(TempFileName);
  DeleteFile(TempFileName);
End;

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
Максим попробую твой вариант, если заработает, то наверное его оставлю.
Уже в который раз выручаешь......
Есть же ещё добрые люди на свете..

Добавлено спустя 14 минут, 11 секунд
так что то не хотит работать, хотя ошибок тож не выводит... такой вопрос в месте где написано Bla bla bla что то надо вставлять?
Я вставил следущее

Код:
TempFileName:=IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].FileName;
 if IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].ItemType=ditDirectory

и
Код:
IdFTP1.TransferType:=ftBinary;
 BytesToTransfer:=IdFTP1.Size(TempFileName);

пробовал и без этого... но без этого выходила ошибка
Код:
MainForm:The sysytem can not find the file specified
вроде пытаюсь вывести именно тхт файл

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 05.01.2003
Откуда: Москва
Фото: 2
mp3corp
Ну ок
Добавлено спустя 5 минут, 9 секунд
mp3corp
То есть у тебя в итоге должно получиться примерно вот что:
Код:
Function MyGetTempPath: String;
Var
  Buffer: Array[0..1023] Of Char;
Begin
  SetString(Result, Buffer, GetTempPath(Sizeof(Buffer) - 1, Buffer));
End;

Function ExtractOnlyFileName(FileName: String): String;
Begin
  Result := ExtractFileName(FileName);
  SetLength(Result, Length(Result) - Length(ExtractFileExt(Result)));
End;

bla bla bla
  TempFileName := MyGetTempPath + '\' + ExtractOnlyFileName(Application.ExeName) + IntToStr(Random(1000000)) + '.txt';

if not IdFTP1.Connected
 then Exit;
 Name:=IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].FileName;
 if IdFTP1.DirectoryListing.Items[DirectoryListBox.ItemIndex].ItemType=ditDirectory
 then
  begin
   //
   ChangeDir(Name);
  end
 else
  begin
   try
      IdFTP1.TransferType:=ftBinary;
      BytesToTransfer:=IdFTP1.Size(Name);
      IdFTP1.Get(Name, TempFileName , true);
   finally
   Memo1.Lines.LoadFromFile(TempFileName);
   DeleteFile(TempFileName );
   end;
end;

_________________
Устав традиций нужно соблюдать, Хоть и не раз ответят вам отказом: Конечно, баба может и не дать, Но предложить ты ей всегда обязан!


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
Максим да пока ещё не ок в мемо-то нечего не выводится
Добавлено спустя 19 минут, 42 секунды
чет вобще странности пошли, теперь ругается на функцию ChangeDir , говорит что это не объявленный идентиф-р, ..
Добавлено спустя 11 минут, 24 секунды
такая особенность файлик ф темпах появляется (удалил строку DeleteFile) но его размер о Байт
Добавлено спустя 2 минуты, 58 секунд
ладно оставлю своц вариант и нефиг больше париться!
Добавлено спустя 34 минуты, 2 секунды
Максим все правильно ты мне написал, сам сглупил ещё раз спасибо!!!!!!! Все отображается

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 27.05.2006
Откуда: Saransk
Всем привет, использую следущий код для отображения имен файлов из листбокса в сомбобокс:
Код:
ComboBox1.Perform(CB_DIR, DDL_READWRITE, lParam(PChar(ExtractFilePath(Application.ExeName) + '\files\*.txt')));

все это пишу в событии Form1.Show, но ничего не отображается... помогите разобраться
Добавлено спустя 52 минуты, 3 секунды
или вывести имена файлов текущей директории в которой находимся
Добавлено спустя 22 минуты, 27 секунд
уже сам разобрался

_________________
Я рвусь от новостей так быстро мир стал другой.


 

Member
Статус: Не в сети
Регистрация: 21.01.2007
Откуда: Киев, Украина
Как реализовать подобный интерфейс а иммено

http://upload.com.ua/get/900427939

http://pic.co.ua/images/1220724956_form1.JPG

сетка План размещения.

зарание благодарен.
Отредактировано модератором: mein. Дата: 07.09.2008 1:04

_________________
___________________________________
#1 R9 5900X /ASUS TUF X570/32GB/ASUS GTX 1080 TI OC/SSD 512 m.2/ WD 2x1TB/Enhance 850w/HeatKiller IV MORA3


 

Member
Статус: Не в сети
Регистрация: 29.01.2005
Откуда: Москва
Помогите пожайлуста с программкой :) Нужна программа которая бы на COM порт могла отсылать несоклько команд, в ASCII либо в HEX не знаю как ей там удобнее. Сложно это вообще сделать? Я года 4 назад что то кодил на делфи, но очень не серьезно, калькуляторы всякие и прочую чепуху :)

_________________
..::Russian Overs Team::..


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 2317 • Страница 101 из 116<  1 ... 98  99  100  101  102  103  104 ... 116  >
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan