|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.10.2007, 11:15 | #1 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Выделение в ListBox по правому клику
Нужно в ListBox по правому клику выделять пункт. Если мультиселект отключен то достаточно поменять ItemIndex на нужный, но если мультиселект включен, по изменению ItemIndex автоматического выделения (Selected) не происходит т.к. ItemIndex один, а выделений может быть несколько.
Выделить вручную можно (Selected:=true), но тогда нужно снять выделение с других пунктов если они выделены. Вот в этом и зключается вопрос. Единственное что пришло мне в голову это в цикле перебирать весь список. Может кто знает лучшее решение?
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
01.10.2007, 12:04 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,792
|
Пробуй так :
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ListBox1.Selected[ListBox1.ItemAtPos(Point(x,y),true)]:=not ListBox1.Selected[ListBox1.ItemAtPos(Point(x,y),true)]; end;
I'm learning to live...
|
01.10.2007, 18:19 | #3 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Да нет, это не то. Надо не с одного а с всех.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
01.10.2007, 21:40 | #4 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,520
|
мне в голову ничего более умного, кроме как посылать сообщение списку, что якобы по нему ткнули левой кнопкой, не пришло:
Код:
|
01.10.2007, 22:33 | #5 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
пробовал )) только я немного не так вызывал, но суть не в этом, суть в том что не подошло, не помню уже почему но не подошло
p.s. щас специально еще раз попробовал чтобы вспомнить - всплыв. меню перестает вызываться хм, может и его принудительно вызвать? p.p.s. нашел причину, все заработало, pu4koff Спасибо!
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 02.10.2007 в 00:43. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
закрытие страницы по клику на ссылке!!! | Redvold | HTML и CSS | 1 | 09.06.2008 01:21 |
Выделение в StringGrid | Лубышев | Помощь студентам | 2 | 08.06.2008 21:05 |
До выделение памяти | MAKTE | Общие вопросы C/C++ | 4 | 20.05.2008 21:34 |
Выделение данных | John Pepper | Microsoft Office Excel | 3 | 10.05.2008 19:09 |
StringGrid как выровнять по центру и по правому краю? | MAcK | Компоненты Delphi | 5 | 03.09.2007 14:11 |