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

Вниз

Мастера, помогите плиз...   Найти похожие ветки 

 
ZLODey ©   (2003-10-01 21:05) [0]

Как сделать так, чтоб с каждым нажатием на TButton(допустим) читалась 1-а строка из txt-файла, Ещё раз нажать-следующая строка и тд
А лучше, чтоб не попорядку(1-я,2-я,3-я...) а вразнобой...?


 
MaxDDinc   (2003-10-01 21:25) [1]

Объяви счетчик в pablic, а если нужно случайно, то Random
:)


 
Fay   (2003-10-01 21:53) [2]

Лучше rundom 8)


 
ZLODey ©   (2003-10-01 23:14) [3]

Чушь...


 
snoup ©   (2003-10-01 23:20) [4]

Смотря как ты себе представляешь --- этот разнобой!!!


 
ZLODey ©   (2003-10-01 23:43) [5]

Всмысле...
Ну чтоб разные строки считывал, ане по порядку...


 
Endi ©   (2003-10-01 23:54) [6]

При условии что файл уже объявлен.

TForm1.btnText(Seneder:Tobject);
var
i,Num:integer;
NeedString:string;

begin
Num:=StrToInt(edtStringNumber.Text);
for i:=1 to Num do begin
Reset(FileName);
NeedString:=ReadLn(FileName,NeedString);
end;
end;

Вроде так.


 
ZLODey ©   (2003-10-02 00:01) [7]

Чё за процедура такая - TForm1.btnText(Seneder:Tobject);?


 
ZLODey ©   (2003-10-02 00:16) [8]

Вот это я замутил для открытия файла:

procedure TOstr.bbGenClick(Sender: TObject);
var
F: TextFile;
S: String;
begin
AssignFile(F,"GDATA\SAT.dat");
Reset(F);
ReadLn(F,S);
Memo1.Lines.Text := S;
end;


файл открыт...В Мемо1 находится текст первой строки...

Endi, вмонтируй текст плз...


 
ЮЮ ©   (2003-10-02 03:29) [9]

В Private секции своей формы:
FFileLines: TSringList;
В обработчике TOstr.FormCreate добавь
FFileLines := TSringList.Create;
в обработчике TOstr.FormDestroy добавь:
FFileLines.Free;

procedure TOstr.bb ReadClick(Sender: TObject);
begin
FFileLines.LoadFromFile("GDATA\SAT.dat");
end;

если файл один и тот же, это можно переместиь в TOstr.FormCreate после создания FFileLines, иначе привязать TOpenDialog:

if OpenDialog1.Execute then
FFileLines.LoadFromFile(OpenDialog1.FileName);

Теперь для доступа к любой строке файла в любом обработчике формы пишешь FFileLines[<нужная строка>], контролируя, естественно, значение индекса.

procedure TOstr.bbGenClick(Sender: TObject);
begin
if FFileLines.Count > 0 then
Memo1.Lines.Text := FFileLines[Random(FFileLines.Count)]
else
Memo1.Clear;
end;

Кстати, непонятно, зачем Memo для одной строки?
А если ты хочешь, чтобы строки добавлялись, то

if FFileLines.Count > 0 then
Memo1.Lines. Add(FFileLines[Random(FFileLines.Count)]);
else
Memo1.Clear;



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
1-40436
Ден
2003-10-02 23:13
2003.10.13
Прога с файлами


3-40294
Deimos
2003-09-22 15:22
2003.10.13
Не могу создать новую базу данных под firebird 1.0.2.908


6-40533
ZHK
2003-08-14 15:38
2003.10.13
ESC and Telnet?


1-40354
3APA3A
2003-10-01 15:15
2003.10.13
Как правильно добавить значения в ValueListEditor???


4-40736
L.N.N.
2003-08-07 10:42
2003.10.13
Перехватить нажатие пункта меню