Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.03.2008, 21:11
mozhunt mozhunt вне форума
Прохожий
 
Регистрация: 22.03.2008
Сообщения: 7
Репутация: 10
По умолчанию Как запомнить,что вводили в окно поиска?

Народ,есть вопрос :

Допустим , на форме есть edit и кнопка. В edit пишется слово и при нажатии на кнопку куда-то должно записываться :

"слово1" 1

если в edit написать другое слово и снова нажать на кнопку, то там же,будет вторая запись

"слово1" 1
"слово2" 1

Если опять написать первое слово и нажать на кнопку, то будет так:

"слово1" 2
"слово2" 1


вот как это реализовать ?

введенных слов будет немного... до 20шт
Ответить с цитированием
  #2  
Старый 22.03.2008, 21:30
Аватар для Dux
Dux Dux вне форума
Активный
 
Регистрация: 18.03.2008
Сообщения: 206
Репутация: 16
По умолчанию

Используйте ListBox. Добавляете слова как элементы списка. Listbox1.items.add('слово1'); А содержимое списка легко записывается в текстовый файл. Listbox1.items.savetofile('text.txt');
Ответить с цитированием
  #3  
Старый 22.03.2008, 21:41
Аватар для KOOL
KOOL KOOL вне форума
Активный
 
Регистрация: 06.01.2008
Адрес: Рязань
Сообщения: 306
Версия Delphi: 2009
Репутация: 6150
По умолчанию

можно через 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  
Старый 22.03.2008, 21:55
mozhunt mozhunt вне форума
Прохожий
 
Регистрация: 22.03.2008
Сообщения: 7
Репутация: 10
По умолчанию

KOOL : спасибо, но у вас не считает,если введенные слова повторяются..
Ответить с цитированием
  #5  
Старый 22.03.2008, 22:02
Аватар для KOOL
KOOL KOOL вне форума
Активный
 
Регистрация: 06.01.2008
Адрес: Рязань
Сообщения: 306
Версия Delphi: 2009
Репутация: 6150
По умолчанию

только что исправил
Ответить с цитированием
  #6  
Старый 22.03.2008, 22:16
mozhunt mozhunt вне форума
Прохожий
 
Регистрация: 22.03.2008
Сообщения: 7
Репутация: 10
По умолчанию

ага,спасибо огромное
Ответить с цитированием
  #7  
Старый 23.03.2008, 12:27
mozhunt mozhunt вне форума
Прохожий
 
Регистрация: 22.03.2008
Сообщения: 7
Репутация: 10
По умолчанию

такс... получили мы в итоге вот такую штуку:

видео1 1
видео2 1
корпус1 3
проц1 1
корпус2 1

а как бы сделать,чтобы список выводился в таком виде:

видео1 1 видео2 1
корпус1 3 корпус2 1
проц1 1

Т.е. если первые 2 символа одинаковые,то это означает одну категорию, если разные,то другую..
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:14.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter