2015-05-14 2 views
0

как я могу изменить выбранный элемент в ListView ...listviewer не меняет выбор в OnShow

вот мой пример кода:

for c := 0 to Form1.LV1.Items.count -1 do 
    begin 
     if (form1.lv1.Items[c].SubItems.Objects[3] as TTabSheet).TabIndex = 
     pgc1.ActivePageIndex then 
     begin 
     form1.lv1.Items[c].Selected:= True; 
     end; 
    end; 
+1

Можете ли вы объяснить, как ваш код не сработает, пожалуйста, –

+0

Мне нужно изменить выбранный элемент listiewer, когда в onshow таблицы есть действие! – MrHelp

+0

Не могли бы вы объяснить, как ваш код не сработает, пожалуйста, –

ответ

1

Я создал простое приложение с списка, установите это в режиме отчета добавлены некоторые элементы, и добавили OnShow событие:

procedure TForm1.FormShow(Sender: TObject); 
begin 
    ListView1.Items[1].Selected := True; 
end; 

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

Вывод из этого заключается в том, что свойство Selected может использоваться из события OnShow. Поэтому, если ваша программа не приводит к выбору вида списка можно установить, казалось бы, что либо:

  1. Код в вопросе не работает вообще, или
  2. код работает, но if Состояние заявления никогда не True.

Ваш следующий шаг - отладка вашей программы. Осмотрите свою программу, когда она выполняется с использованием предпочтительной технологии отладки. Интерактивный отладчик будет звуковым выбором.

+0

спасибо за всех, просмотр списка не выбирайте onshow только в onchange! – MrHelp

+0

Это проблема с вашим кодом, так как мой ответ указывает –