|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
ListView. Двойное выполнение SelectItem
Такая вот проблемка. есть два компонента listview. первый работает правильно, хотя в прошлой программке точно так же глючил.
Вобщем при выделении строки должно открываться окно с данными. Оно открывается, но после закрытия открывается еще раз. Подскажите плиз в чем проблемка |
#2
|
|||
|
|||
Код:
procedure TForm4.ListView2SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); begin Form5.turnir.caption:= Item.Caption; Form4.Label1.Caption:= Item.Caption; Form5.Show; Form4.Hide; end; Код:
procedure TForm4.FormCreate(Sender: TObject); begin DoubleBuffered:= true; logo.Picture.LoadFromFile('images\logo.jpg'); end; Код:
procedure TForm4.FormPaint(Sender: TObject); begin //***Информация по турниру****************** form4.sql1.Connection:= form1.zconnection1; sql1.SQL.Clear; id:= StrToInt(''+Form2.turnir.caption); turnir_id.Caption:= IntToStr(id); sql1.SQL.Add('SELECT * FROM `tournaments` WHERE `id` = "'+turnir_id.caption+'"'); sql1.Active:= true; data1:= sql1.fieldbyname('from_data').AsDateTime; data2:= sql1.fieldbyname('to_data').AsDateTime; if sql1.FieldByName('registered').Asstring = 'yes' then listview2.Visible:= true else listview2.Visible:= false; date_from.Caption:= datetimetostr(data1); date_to.Caption:= datetimetostr(data2); //***Выборка событий*********************** sql2.Connection:= form1.ZConnection1; sql2.SQL.Clear; sql2.SQL.Add('SELECT * FROM `bets` WHERE `status` = "no" '); sql2.Active:= true; //***Вывод событий в таблицу**************** ListView2.Items.Clear; sql2.First; ListView2.Items.BeginUpdate(); while not sql2.Eof do begin if (sql2.FieldByName('data').AsDateTime > data1) AND (sql2.FieldByName('data').AsDateTime < data2) then begin listitem:= ListView2.Items.Add; listitem.Caption:= sql2.fieldbyname('id').AsString; listitem.SubItems.add(sql2.fieldbyname('data').asstring); listitem.SubItems.Add(sql2.fieldbyname('liga').AsString); listitem.SubItems.Add(sql2.fieldbyname('team1').AsString + ' - ' +sql2.fieldbyname('team2').AsString); end; sql2.Next(); end; ListView2.Items.EndUpdate(); //REG BUTTON********************* if (sql1.FieldByName('registered').AsString = 'yes') then begin form4.btn_reg.Visible:= false; //time := Now; //label1.Caption:= datetimeToStr(time); // if (sql1.FieldByName('data').AsDateTime > time) then form4.btn_unreg.Visible:= true; end else form4.btn_reg.Visible:= true; end; |
#3
|
|||
|
|||
Скорее всего, потому что данный обработчик, а именно
Код:
procedure TForm4.ListView2SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); |
#4
|
|||
|
|||
всмысле что изменить? расскажите пожалуйста подробнее
|
#5
|
||||
|
||||
Код:
procedure TForm1.ListView1SelectItem(Sender: TObject; Item: TListItem; Selected: Boolean); begin if Selected then begin (* do it *) end; end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
chellas88 (09.01.2016)
|
#6
|
|||
|
|||
все так просто) спасибо большое
|