Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.04;
Скачать: CL | DM;

Вниз

На какое событие это сделать?   Найти похожие ветки 

 
.ruslan ©   (2005-08-11 14:21) [0]

Доброго времени суток!
С одной проблемой накануне столкнулся я, и не могу сдвинуться с «мёртвой точки». Так вот,  нужно что бы при выборе одной из строк компонента TListView, нужно чтобы например TLabel принимал свойство Caption равную одному из ячейки выбранной строки компонента. Помогите если это вас не затруднит. На какое событие это сделать?


 
Digitman ©   (2005-08-11 14:24) [1]

на OnChange

при условии что выбор эл-та списка осуществляется интерактивно.


 
.ruslan ©   (2005-08-11 14:30) [2]

то есть?


 
Digitman ©   (2005-08-11 14:37) [3]

то есть событие возбуждается по инициативе юзера, а не программно


 
.ruslan ©   (2005-08-11 15:53) [4]

Сделал вот так:

procedure TMAIN.ListView2Change(Sender: TObject; Item: TListItem;
 Change: TItemChange);
var
i:integer;
begin
i:=listview2.ItemIndex;
label4.Caption := listview2.Items.Item[i].SubItems.Strings[1];
end;


Ругается млин, EAccessViolation. Что-там не так?


 
TUser ©   (2005-08-11 15:59) [5]

Кто-то не создан.

PS. Тебе Item уже передали, поэтому можно прямо написать Item.SubItems..., без всяких там I и индексов.


 
.ruslan ©   (2005-08-11 17:19) [6]

Нет, дело в том, что у меня множество (не один) столбцов


 
pasha_golub ©   (2005-08-11 17:31) [7]

Нумерация с нуля начинается. Это учел?


 
GuAV ©   (2005-08-11 17:44) [8]

Это событие вызывается и при потере выбора.
SubItems - существует ?
Strings[1] -  существует ?


 
.ruslan ©   (2005-08-11 18:13) [9]

Да, всё существует. 4 строки, и более за 10 колон


 
.ruslan ©   (2005-08-11 18:17) [10]

Нажимаю первый раз - всё работает, второй - error...


 
Eraser ©   (2005-08-11 18:35) [11]

.ruslan ©   (11.08.05 18:17) [10]

Ошибка видать в 17-й строке.


 
.ruslan ©   (2005-08-11 19:17) [12]

Всё сделал, спасибо всем! Решил пойти нетрадиционным способом, вот:

procedure TMAIN.ListView2Click(Sender: TObject);
var
i:integer;
begin
i:=listview2.ItemIndex;
if ListView2.Selected <> nil then
begin
 label4.Caption := listview2.Items.Item[i].SubItems.Strings[0];
end;
end;



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

Текущий архив: 2005.09.04;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.03 c
2-1123267874
MAVr
2005-08-05 22:51
2005.09.04
Работа с папками…


3-1121942224
helpme
2005-07-21 14:37
2005.09.04
Как определить используется ли запись другим пользователем


3-1122201185
NickMan
2005-07-24 14:33
2005.09.04
ADO и BDE не уживаются в одном приложении


3-1121940951
PHilosoPH!
2005-07-21 14:15
2005.09.04
Список серверов MS SQL


1-1124177958
alex-drob
2005-08-16 11:39
2005.09.04
Сообщение приложению не имеющего окна