Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа со строчками в ComboBox


Timer ©   (2002-07-06 13:55:00) 

Есть две кнопки Button1 и Button2 и Combobox1. И имеется файл file.txt.
При клике на Button1, нужно добавить строчку (та, которая находится сейчас в ComboBox1) в конец файла file.txt.
А при клике на Button2, нужно удалить из файла file.txt ту строчку, которая находится в ComboBox1.


MBo   (2002-07-07 07:08:00) [1]

ну ты и ленив....
буквальный перевод на английский:

StringList:=TStringList.Create;
StringList.LoadFromFile("file.txt");
i:=StringList.IndexOf(ComboBox1.Text);
if i>=0 then
StringList.Delete(i);
StringList.SaveToFile("file.txt");
StringList.Free;


Timer   (2002-07-06 23:25:00) [2]

Спасибо MBo и AL2002!

2Mbo
Если не трудно, можешь подсказать код к обработчику на Button2?
:-))


AL2002   (2002-07-06 22:43:00) [3]

Правильно, а находить – определить количество строк и пробежаться по ним. Где совпадёт:
with Combo.Items do
if твоястрока > -1 then Delete(IndexOf(твоястрока));


MBo   (2002-07-06 21:47:00) [4]

1) в Button1Click
var f:text;

AssignFile(f,имяфайла);
Append(f);
Writeln(f,ComboBox1.Text);
CloseFile(f);

2) В Button2Click
создать TStringList
прочитать файл в TStringList
найти в StringList ComboBox1.Text (c помощью IndexOf)
если найдено, удалить эту строку
сохранить StringList




AL2002   (2002-07-06 18:41:00) [5]

Почему мемо не подходит? Ты же можешь сделать его невидимым.
Считываешь в мемо (ну ладно, просто в переменную) весь файл и обрабатываешь его строки.
Это же просто. Делаешь поиск на основе того, что у тебя щас выделено в комбо и удаляешь. Усё!

Ну ладно, пришли свой исходник на zamkovagora@bel.com.ua, я его щас могу поюзать. Может получится. Ну, если это у тебя суперкоммерческая разработка, тогда мучайся сам.
(дельфи6, надеюсь, и лишних компонентов нет, надеюсь).

Другое дело, если в твоих строках есть символы перевода строки, тогда не присылай, замучаюсь.


Timer   (2002-07-06 17:55:00) [6]

Так это невозможно сделать? :-(((


Timer   (2002-07-06 16:52:00) [7]

Надо именно с ComboBox


AL2002   (2002-07-06 16:48:00) [8]

С таким ещё не работал, но чувствую, тебе нужно попробовать с Мемо.Лайнс. Т.е. считать данные в мемо и дальше что-то там вроде
With Memo1.Lines do etc.


Timer   (2002-07-06 16:45:00) [9]

Нет. Нужно при клике на Button1, добавить тот текст (строчку), который сечас находиться в ComboBox1, в конец файла file.txt. Т.е. дописать в конец файла.
А при клике на Button2, нужно удалить только ту строчку (текст) из файла file.txt, которая находиться в ComboBox1.


AL2002   (2002-07-06 16:41:00) [10]

Да ты конкретноскажи, чего нужно — с файлом разобраться или с комбобоксом?

Комбо:
Memo1.Text:=Form1.ListBox1.Items[Form1.ListBox1.ItemIndex];


Timer   (2002-07-06 16:13:00) [11]

Ну подскажите код пожалуйста :-))


Lola   (2002-07-06 14:41:00) [12]

Наверное код нужен :)


MBo   (2002-07-06 14:05:00) [13]

чего именно не знаешь?


Наверх

Титульная страница Поиск, карта сайта Написать письмо