Вниз
Скачать: CL | DM;

использование TListBox и TEdit   Найти похожие ветки 

← →
SergeiX   (2005-06-01 12:28) [0]

Решаю задачу:"Создать Приложение,  содержащее компоненты TEdit и TListBox и работающее следующим образом. При двойном нажатии на TEdit  происходит добавление текста из строки TEdit в список TListBox при условии отсутствия такой строки в списке. Если такая строка уже есть в списке,  она сначала удаляется из списка, а затем добавляется в него из строки TEdit."
    Проблема в удалении из сприска TListBox элемента совпадающего с TEdit.
    Начало у меня такое:
procedure TForm1.dobavka(Sender: TObject);
var i:integer;
   n:integer;
   s:string;
begin
{ListBox1.Items.Add(Edit1.Text);}
n:=-1;
for i:=0 to ListBox1.Count-1 do
begin
 s:=ListBox1.Items[i];
 if s=Edit1.Text then
                      begin
                      n:=i;
                        {ListBox1.Items.Clear; }
                        {delete (ListBox1.Items[i]);}
                       {ListBox1.DeleteSelected;}
                      end;;
end;
 ListBox1.Items.Add(Edit1.Text);
end;


← →
Kerk ©   (2005-06-01 12:30) [1]

ListBox.Items.Delete(ListBox.Items.IndexOf(Edit1.Text));


← →
SergeiX   (2005-06-01 12:52) [2]

Теперь работает до того момента пока повторяешь последний элемент
,а если повторить предпоследний то выдает ошибку встроке выделенной жырным. Я не очень разбираюсь что-то про индексацию?
begin
 s:=ListBox1.Items[i];
 if s=Edit1.Text then
                      begin
                      n:=i;
                        {ListBox1.Items.Clear; }
                        {delete (ListBox1.Items[i]);}
                       {ListBox1.DeleteSelected;}
    ListBox1.Items.Delete(ListBox1.Items.IndexOf(Edit1.Text));
                      end;;
end;


← →
msguns ©   (2005-06-01 13:02) [3]

Вместо всей лабуды 2 строки:
with ListBox1.Items do begin
  Delete(IndexOf(Edit1.Text));
  Add(Edit1.Text);
 end;


← →
msguns ©   (2005-06-01 13:04) [4]

А так вааще в одну:

with ListBox1.Items,Edit1 do begin Delete(IndexOf(Text)); Add(Text); end;

;)

Это чего, лаба такая ?


← →
SergeiX   (2005-06-01 13:34) [5]

msguns спасибо конечно но твоим способом в списке ListBox1 всеравно появляются одинаковые элементы чего нельзя по условию например:
edit1
edit2
edit3
edit2
такого не должно быть. Мож я что не так желаю . Мне эту контрольную завтра сдавать. И голова уже плохо соображает :)


← →
SergeiX   (2005-06-01 13:59) [6]

msguns Спасибо когда я все потер кроме твоей одной строки все
пошло. Классно. контрольная решена. А еще вопрос если не трудно я так понимаю сдесь отключалась индексация а я пробовал при включеной  вобщем помоему способу выхода небыло наверно? Но ладно в принципе это уже не важно . А еще где мне можно найти добрую помощь руссифицированную к 7 delphi?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
14-1117618035
peypivo
2005-06-01 13:27
2005.06.29
SMS марафон


3-1116073258
Yuri Btr
2005-05-14 16:20
2005.06.29
Запрос данных с определенной датой


14-1117863334
Гость4
2005-06-04 09:35
2005.06.29
Россия-Латвия


14-1117223390
Gamer
2005-05-27 23:49
2005.06.29
Слабый сигнал. Мобила.


1-1117621977
Gek1
2005-06-01 14:32
2005.06.29
Зависание программы




   Наверх