![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() list_note(TListView) - список заданий, где значение 3 столбца=названию задания
Требуется удалить из файла строку которая совпадает с названием задания, а также еще 4 следующие строки. Код:
procedure Tfrm_main.btn_deletenoteClick(Sender: TObject); var i:integer;s:string; FileNote:TStringList; begin FileNote:=TStringList.Create; FileNote.LoadFromFile('note.ejd'); {Удаляем из списка} list_note.DeleteSelected; {Удаляем из файла} i:=0; while i<>Filenote.Count-4 do begin s:=String(' '+Filenote.Strings[i]); if s=list_note.Items.Item[list_note.ItemIndex].SubItems.ValueFromIndex[1] then begin FileNote.Delete(i); FileNote.Delete(i+1); FileNote.Delete(i+2); FileNote.Delete(i+3); FileNote.Delete(i+4); end else begin inc(i,5); end; FileNote.Free; end; end; |
#2
|
|||
|
|||
![]() Что, никто помочь не сможет?
|
#3
|
|||
|
|||
![]() У тебя же есть сохранение в файл? Просто заного сохрани файл после удаления из ListView.
|
#4
|
|||
|
|||
![]() У меня нету сохранения в файл..оно мне не требуется
Есть только добавить запись |
#5
|
||||
|
||||
![]() Код:
if s=list_note.Items.Item[list_note.ItemIndex].SubItems.ValueFromIndex[1] then //надо if s=list_note.Items.Item[list_note.ItemIndex].SubItems.Strings[2] begin FileNote.Delete(i); FileNote.Delete(i+1);//так нельзя делать FileNote.Delete(i+2);//при удалении строки i строка i+1 FileNote.Delete(i+3);//становится на ее место. надо 5 раз FileNote.Delete(i+4);//удалить строку i end else begin inc(i,5);//почему на 5??? end; Последний раз редактировалось KOOL, 14.05.2008 в 12:03. |
#6
|
|||
|
|||
![]() 5 потому как у меня структура базы такая:
date1 time1 name1 stat1 opis1 date2 time2 name2 stat2 opis2 проверяем только параметр date |