Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2007, 20:54   #1
bill
Форумчанин
 
Аватар для bill
 
Регистрация: 26.04.2007
Сообщений: 440
Вопрос справочник

Я тут решил написать простенький блоконт-справочник. По замыслу там есть календарь и т.п.
Но с кнопкой удаления у меня приключилась какая-то странная история. В мемо должны записываться все остальное что я не удалил(строку из combobox-потом в новой форме у меня идет как раз сохранение оставшихся строк из combobox в файл ). В него записывается и так не все а при удалении/ записывании в новый файл не выдается ничего?
В чем проблема? Заранее благодарен за ответ.
Код:

procedure TForm1.SpeedButton1Click(Sender: TObject);
var f,g:textfile; a:string; i:integer;
begin
n:=combobox1.text;
combobox1.DeleteSelected;
assignfile(f,'1.txt');
reset(f);
while not eof(f) do begin
readln(f,a);
for i:=1 to ComboBox1.Items.Count do // оставшиеся строки в комбе
if pos(combobox1.items[i],a)=1 then
memo2.Lines.Add(a);
end;
closefile(f);
assignfile(g,'1.txt');
rewrite(f);
append(f);
for i:=1 to memo2.Lines.Count do
write(f,memo2.lines[i]);closefile(f);
end;
bill вне форума Ответить с цитированием
Старый 19.05.2007, 21:57   #2
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

а вот теперь сам подумай что ты написал ..
посиди и прокоментируй каждую стоку )
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 20.05.2007, 14:37   #3
bill
Форумчанин
 
Аватар для bill
 
Регистрация: 26.04.2007
Сообщений: 440
Вопрос

Вот я немного переделал алгоритм + добавил коменты, но суть все та же
В коментах написано построчно что как по идее должно работать и там же отмечено что где не работает.
Помогите, пожалуйста.

procedure TForm1.SpeedButton1Click(Sender: TObject);
var f,g:textfile; a:string; i:integer;
begin
n:=combobox1.text;
combobox1.Items.Delete(yu); //удаляю выбранную строку (yu) присваиваю значение выбранной строки в оnclick
assignfile(f,'1.txt'); // открываю файл в котором содержится инфа
reset(f); // чтение из него
while not eof(f) do begin // цикл чтение до конца файла
readln(f,a);//считываю строку из файла просто в строку
for i:=1 to ComboBox1.Items.Count do // цикл количества строк
if pos(combobox1.items.Text[i],a)=1 then
memo2.Lines.Add(a); // если позиция этой продстроки встречающейся в строке а=1 тогда добавляем инфу этой строки в memo
end; // !!!!!(там в memo записывается почему то только первая строка )!!!!
closefile(f);
assignfile(g,'1.txt');
rewrite(f); // удаляет и создает новый файл с таким же именем
append(f); //открываю для добавления
for i:=1 to memo2.Lines.Count do // опять же цикл количества строк
write(f,memo2.lines[i]);closefile(f); // должен добавить вфайл инфу и закрыть его
end;
bill вне форума Ответить с цитированием
Старый 22.05.2007, 16:03   #4
bill
Форумчанин
 
Аватар для bill
 
Регистрация: 26.04.2007
Сообщений: 440
Подмигивание правильный вариант

фуф. сделал. Вот если кому понадобиться:

procedure TForm1.SpeedButton1Click(Sender: TObject);
var f,g:textfile; a:string; i:integer;
begin if combobox1.Text<>'' then begin
ty:=combobox1.ItemIndex;
n:=combobox1.Text;
combobox1.Items.Delete(ty);
assignfile(f,'1.txt');
reset(f);
while not eof(f) do begin
readln(f,a);
if pos(n,a)=0 then memo2.Lines.Add(a);
end;
closefile(f);
assignfile(g,'1.txt');
rewrite(f);
append(f);
write(f,memo2.text);closefile(f); memo2.Text:='';
end;
end;
bill вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Электронный Справочник Killbrum Софт 14 15.10.2017 20:44
Телефонный справочник на TC Qai Фриланс 5 25.05.2008 01:02
справочник по Api функциям serg131 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 5 22.05.2008 04:54
телефонни справочник bmb_66 БД в Delphi 8 25.02.2008 12:11
справочник по прерываниям serres Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 22.12.2007 16:17