10:44

И в каждой искре столько правды, сколько есть всего
Дарбис как обычно "везучая". Все варианты лаб по программированию с картинками пояснительными и даже с кучками кода, болеее того, их-то решить можно было и без пояснений - ну в смысле я смогла бы, а мне достался только с заданием.

думаю

Комментарии
04.04.2011 в 11:57

Cause two can keep a secret If one of them is dead.
теоретически - одно из свойств FileListBox, типа значение выбраного файла.
04.04.2011 в 12:00

Cause two can keep a secret If one of them is dead.
не помню конкретно, кажется было что-то вроде Edit
04.04.2011 в 12:48

мрр?
че-то незнакомые компоненты, но скорее всего так:

var
f: Textfile;
Fname: String;
s: string;
begin
Fname:=DirectoryListBox1.Item[номер записи].Text+'\'+FileListBox1.Item[номер записи].Text; //вот тут не знаю как обратиться точно к имени папки/файла
Reset (f, Fname);
While not Eof(f) do
begin
Readln(f,s);
Memo1.Lines.Add(s); //вроде так... давно я с Мемо не работал )
end;
emd;
04.04.2011 в 13:57

Cause two can keep a secret If one of them is dead.
а почему Fname как string объявлен?
04.04.2011 в 14:33

мрр?
Тореадорский скрипач, потому что в него заносится путь к файлу. Сама переменная файла - f
04.04.2011 в 16:13

вы странные человеки) у файл лист бокса есть свойство селектед) из него вытаскивается переменная типа файлнейм(файлнейм - тип сортед стринг - сразу раскладывает на расширение и т.д.). это имя файла. из директори лист бокса вытаскивается то же селектед поле только с путем до файла. дальше вообще банально)
04.04.2011 в 16:13

Cause two can keep a secret If one of them is dead.
хм..
04.04.2011 в 16:32

как мне сказал Zakhnafein я снова пришел и сказал что "вы все говно и не лечитесь а я самая красивая ..) "ну или как там правильная цитатка? ) так вот обидеть никого не хотел и предложенный Zakhnafein вариант тоже очень даже имеет право на жизнь) )))
04.04.2011 в 22:36

И в каждой искре столько правды, сколько есть всего
Тореадорский скрипач , FileName.
Zakhnafein , а почему Reset (f, Fname);? так можно разве без assign? И я пробовала через LoadFromFile в мемо записать...
Angellik , я не поняла что с selected делать, выуживала имя выделенного файла как FileListBox1.FileName сразу... и искала в нем '.txt'
Но в итоге все равно ошибок до фига. Чтобы файл считался выделенным, приходится на него кликнуть, и потом еще раз чтобы перетащить. В конце когда выдает ShowMessage "файл успешно перемещен", я жму ОК и он куда-то перенаправляет с формы в дополнительный код. Ну и запись в мемо не проходит ибо я что-то не так делаю..
04.04.2011 в 23:12

И в каждой искре столько правды, сколько есть всего
procedure TForm1.Memo1DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
//Если переносим ФайлЛистБокс вида тхт то истина , иначе - выводим сообщение об ошибке
var s:string; i:integer;
begin
s:='';
if (Sender is TMemo) and (Source is TFileListBox) then
begin
s:=FileListBox1.FileName; //запись имени файла в строку
if pos('.txt',s)<>0 then //проверяем формат файла
begin
Accept:=True ;
ShowMessage('Файл успешно перемещен');
end
else
begin
Accept:=False;
ShowMessage('Файл переместить нельзя');
end;
end
else
begin
Accept:=False;
ShowMessage('Файл переместить нельзя');
end;
end;


эта процедура работает, но отдельным кликом надо выделить файл, иначе FileName не считывается.
после вывода сообщения showmessage жму ок и вместо того чтобы убрать сообщение прога перенаправляет к автоматическому коду
04.04.2011 в 23:17

И в каждой искре столько правды, сколько есть всего
(пишу по памяти)
procedure TForm1.Memo1DragDrop(Sender, Source: TObject; X, Y: Integer); //при сбрасывании загружаем текст файла
var t: TextFile; s:string;
begin
s:=FileListBox1.FileName;
AssignFile(t,s);
Reset(t); //здесь выдает направильное число параметров, но вроде всегда так делали(
Memo1.Lines.LoadFromFile(t);
CloseFile(t);
end;

вот оно пока не работает, я где-то сильно туплю
05.04.2011 в 00:00

Янтарь веселящий,дикий, бурю буйства несущий, кости дробящий, захлебнувшийся в хохоте, оседлавший смерч.
Матерь божья.....
05.04.2011 в 00:10

мрр?
а почему Reset (f, Fname);? так можно разве без assign?
нет, нельзя... это меня просто переглючило. пардоньте.
05.04.2011 в 00:22

И в каждой искре столько правды, сколько есть всего
|twilight| ,мм?
05.04.2011 в 00:27

Янтарь веселящий,дикий, бурю буйства несущий, кости дробящий, захлебнувшийся в хохоте, оседлавший смерч.
Darbis_Alorienna, я конечно имею ооочень небольшое представление о программировании имею, но твоя фраза "пишу по памяти" меня убила)))).
А так все просто - мне не понять этого языка)
05.04.2011 в 00:31

И в каждой искре столько правды, сколько есть всего
|twilight| ну там не все по памяти, только серединка между бегин-энд, а такое каждый программист на зубок уже знать должен. а у меня вот ошибка там кажись) во всяком случае оно не фурычит( да мне кажется, ты бы и понял, если бы поработал с ним, просто тебе оно не надо)) ну и дневники съели все отступы для удобства понимания сделанные
05.04.2011 в 13:18

мрр?
Darbis_Alorienna, кстати, Reset b вообще вся процедурка "по памяти" написана правильно, вроде.
05.04.2011 в 21:50

И в каждой искре столько правды, сколько есть всего
Zakhnafein, догадываюсь... просто пока отдыхаю от этого=)

Расширенная форма

Редактировать

Подписаться на новые комментарии