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

Вниз

TListView и экшены   Найти похожие ветки 

 
Eraser ©   (2009-03-25 15:05) [0]

Имеется форма. На форме TListVeiw и TActionList, в котором есть экшен, допустим actDelete (реализующий, к примеру, удаление элемента из ListVeiw). Если добавить к этому экшену shortcut (hotkey), допустим Del, то всплывает одна проблемка.

Нужно, чтобы если TListVeiw находится в режиме редктирования элемента (rename), при нажатии на Del - не вызывался экшен, а удалялся символ в названии элемента. Решение, казалось бы, простое - добавить обработчик OnShortcut к форме или Application и там гасить shortcut. Только беда в том, что обработчик не срабатывает, при нажатии горячей клавишы, если в ListVeiw выбран хотя бы один элемент.

Может кто подробно разбирался в том, как функционирует механизм перехвата/генерации shortcut"ов для экшенов в делфи, а точнее, какое сообщение нужно перехватывать?


 
Сергей М. ©   (2009-03-25 15:20) [1]


> если TListVeiw находится в режиме редктирования элемента
> (rename), при нажатии на Del - не вызывался экшен


Не проще ли дизейблить экшн в обработчике OnEditing и , соотв-но, энейблить его взад при OnEdited ?


 
Eraser ©   (2009-03-25 15:42) [2]

> [1] Сергей М. ©   (25.03.09 15:20)

попробовал так делать - экшен срабатывать перестал, но и Del съедается. Т.е. ничего не происходит.

PS
вместо del может быть любой шорткат - проверял.


 
Сергей М. ©   (2009-03-25 16:09) [3]

Ну так можно плюс к этому перед редактированием шоткат-свойство экшна запоминать+очищать, а после редактирования восстанавливать ..


 
Eraser ©   (2009-03-25 16:13) [4]

> [3] Сергей М. ©   (25.03.09 16:09)

ну это крайний вариант, так конечно все работает. видимо более красивых решений просто нет, так и сделаю.



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
2-1260867479
noob_one
2009-12-15 11:57
2010.02.14
Как программно скопировать все данные из DBGridEh в буфер обмена?


2-1260967410
JohnKorsh
2009-12-16 15:43
2010.02.14
Можно ли в Delphi 7 работать с двумя проектами одновременно?


15-1260069104
KilkennyCat
2009-12-06 06:11
2010.02.14
Билогический прогресс был бы лучше технического.


1-1236676563
IGray
2009-03-10 12:16
2010.02.14
Очень странное срабатывание секции INITIALIZATION


1-1237493413
Fresh
2009-03-19 23:10
2010.02.14
Невыводимые символы в Memo, RichEdit