|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как запомнить,что вводили в окно поиска?
Народ,есть вопрос :
Допустим , на форме есть edit и кнопка. В edit пишется слово и при нажатии на кнопку куда-то должно записываться : "слово1" 1 если в edit написать другое слово и снова нажать на кнопку, то там же,будет вторая запись "слово1" 1 "слово2" 1 Если опять написать первое слово и нажать на кнопку, то будет так: "слово1" 2 "слово2" 1 вот как это реализовать ? введенных слов будет немного... до 20шт |
#2
|
||||
|
||||
Используйте ListBox. Добавляете слова как элементы списка. Listbox1.items.add('слово1'); А содержимое списка легко записывается в текстовый файл. Listbox1.items.savetofile('text.txt');
|
#3
|
||||
|
||||
можно через ini или типизированный файл. если нужен именно txt то вот:
Код:
procedure TForm1.Button1Click(Sender: TObject); var Fi : TextFile; str : TStringList; s : string; i : integer; begin AssignFile(Fi, ExtractFilePath(paramstr(0))+'testtext.txt'); If not FileExists(ExtractFilePath(paramstr(0))+'testtext.txt') Then begin Rewrite(Fi); CloseFile(Fi); end; Reset(Fi); str := TStringList.Create; While not EoF(Fi) Do begin Readln(Fi, s); str.Add(s); End; CloseFile(Fi); i:=0; If str.Count>0 Then While (i<str.Count) And (Pos('"'+Edit1.Text+'"', str[i])=0) Do inc(i); If i>=str.Count Then str.Add('"' + Edit1.Text + '"' + ' 1') else str[i] := '"' + Edit1.Text + '"' + ' ' + IntToStr(StrToInt(Copy(str[i], Length(Edit1.Text)+4, Length(str[i])-Length(Edit1.Text)+4)) + 1 ); Rewrite(Fi); For I := 0 To str.Count-1 Do Begin Writeln(Fi, str[i]); End; CloseFile(Fi); end; Последний раз редактировалось KOOL, 22.03.2008 в 22:07. |
#4
|
|||
|
|||
KOOL : спасибо, но у вас не считает,если введенные слова повторяются..
|
#5
|
||||
|
||||
только что исправил
|
#6
|
|||
|
|||
ага,спасибо огромное
|
#7
|
|||
|
|||
такс... получили мы в итоге вот такую штуку:
видео1 1 видео2 1 корпус1 3 проц1 1 корпус2 1 а как бы сделать,чтобы список выводился в таком виде: видео1 1 видео2 1 корпус1 3 корпус2 1 проц1 1 Т.е. если первые 2 символа одинаковые,то это означает одну категорию, если разные,то другую.. |