powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListView и Checkboxes
10 сообщений из 10, страница 1 из 1
ListView и Checkboxes
    #32144962
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
В компоненте ListView есть возможность показывать чекбоксы. Проблема в том, что включение/выключение этих галок делается независимо от редактирования Items. Соответсвенно, даже при ReadOnly = True, можно их менять. Никаких event-oв при этом не вызывается.
А мне нужно устанавливать только программным способом. Конечно, можно попробовать все делать через OwnerData, но это трудоемко. Пробовал перехватывать LVM_SETITEMSTATE - не помогло.
Есть ли возможность запретить юзеру включать/выключать эти галки?
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145064
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это ты путаешь чего-то - нет у ListView чекбоксов. Есть у CheckListBox
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145087
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такое свойство с таким траблом у TListView с закладки Win
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145274
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точно, есть такая - глаза уже не те :)
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145284
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В принципе, на OnClick можно попытаться проверить.
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145384
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Артем1
Пробовал. Увы, в OnClick неизвестно по какому элементу именно щелкнули. Видимо, единственный способ - писать свой компонент и перехватывать сообщения LVM_SETITEMSTATE. Но для моих целей это излишне.
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145537
Фотография Ильшат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По какому элементу щелкнули в OnClick можно узнать вызвав метод TreeView.GetNodeAt( X, Y). Вот только как узнать - щелкнули по самому элементу или по чекбоксу..??
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145543
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Ильшат
В вопросе сказано, что состояние чекбокса нужно устанавливать только программным способом, так что неважно, по чекбоксу кликнули или нет. Просто его еще раз выставить в нужное состоние при клике. А если использовать твой метод определения, по чему кликнули (я, вообще-то, думал, что над смотреть в свойство Selected, вот ламер :)) ), то тогда, вероятно, можно считать проблему решенной.
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145809
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все бы хорошо, только в ListView нет метода GetNode - это не дерево.
Есть, правда, GetNearestItem, но для него нужно самому координаты высчитывать. В общем, недоработочка со стороны Борланда. Через OwnerData тоже, кстати не работает - там просто никакие чекбоксы не рисуются.
Погружусь в депрессию.
...
Рейтинг: 0 / 0
ListView и Checkboxes
    #32145812
Фотография Ильшат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GetItemAt( X, Y)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ListView и Checkboxes
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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