Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListView и Checkboxes / 10 сообщений из 10, страница 1 из 1
21.04.2003, 12:20
    #32144962
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
Добрый день!
В компоненте ListView есть возможность показывать чекбоксы. Проблема в том, что включение/выключение этих галок делается независимо от редактирования Items. Соответсвенно, даже при ReadOnly = True, можно их менять. Никаких event-oв при этом не вызывается.
А мне нужно устанавливать только программным способом. Конечно, можно попробовать все делать через OwnerData, но это трудоемко. Пробовал перехватывать LVM_SETITEMSTATE - не помогло.
Есть ли возможность запретить юзеру включать/выключать эти галки?
...
Рейтинг: 0 / 0
21.04.2003, 14:14
    #32145064
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
Это ты путаешь чего-то - нет у ListView чекбоксов. Есть у CheckListBox
...
Рейтинг: 0 / 0
21.04.2003, 14:25
    #32145087
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
Есть такое свойство с таким траблом у TListView с закладки Win
...
Рейтинг: 0 / 0
21.04.2003, 16:37
    #32145274
tygra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
Точно, есть такая - глаза уже не те :)
...
Рейтинг: 0 / 0
21.04.2003, 16:41
    #32145284
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
В принципе, на OnClick можно попытаться проверить.
...
Рейтинг: 0 / 0
21.04.2003, 18:09
    #32145384
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
2 Артем1
Пробовал. Увы, в OnClick неизвестно по какому элементу именно щелкнули. Видимо, единственный способ - писать свой компонент и перехватывать сообщения LVM_SETITEMSTATE. Но для моих целей это излишне.
...
Рейтинг: 0 / 0
22.04.2003, 07:38
    #32145537
Ильшат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
По какому элементу щелкнули в OnClick можно узнать вызвав метод TreeView.GetNodeAt( X, Y). Вот только как узнать - щелкнули по самому элементу или по чекбоксу..??
...
Рейтинг: 0 / 0
22.04.2003, 08:17
    #32145543
Артем1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
2 Ильшат
В вопросе сказано, что состояние чекбокса нужно устанавливать только программным способом, так что неважно, по чекбоксу кликнули или нет. Просто его еще раз выставить в нужное состоние при клике. А если использовать твой метод определения, по чему кликнули (я, вообще-то, думал, что над смотреть в свойство Selected, вот ламер :)) ), то тогда, вероятно, можно считать проблему решенной.
...
Рейтинг: 0 / 0
22.04.2003, 12:29
    #32145809
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
все бы хорошо, только в ListView нет метода GetNode - это не дерево.
Есть, правда, GetNearestItem, но для него нужно самому координаты высчитывать. В общем, недоработочка со стороны Борланда. Через OwnerData тоже, кстати не работает - там просто никакие чекбоксы не рисуются.
Погружусь в депрессию.
...
Рейтинг: 0 / 0
22.04.2003, 12:31
    #32145812
Ильшат
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView и Checkboxes
GetItemAt( X, Y)
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListView и Checkboxes / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]