Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
2-1260731941
Jaroslight
2009-12-13 22:19
2010.02.14
Заполнение ячеек первой строки таблицы датами текущего месяца


15-1260272593
RUMSCRU
2009-12-08 14:43
2010.02.14
Программа для упорядочивания музыки "Интеллектуальное радио"


2-1260808991
alexan
2009-12-14 19:43
2010.02.14
Вопрос по Delphi


8-1202830269
nuflin
2008-02-12 18:31
2010.02.14
OPENGL VBO


15-1260285232
vajo
2009-12-08 18:13
2010.02.14
Где находятся данные пользоватей в W2008?




   Наверх