Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Сделать собственные shortcut keys

54K
14 апреля 2010 года
Proximus
11 / / 11.04.2010
привет)

Скажите, как можно сделать собственный функционал по назначению горячих клавиш и последующему их использованию. т.е. у меня есть к примеру RichTextbox (в нем я буду писать текст) и есть тот самый функционал для назначения горячих клавиш - например, для выделения текста жирным шрифтом, курсивом и т.д.

Мои действия:
1. на своей форме выбираю из созданного мною функционала - как должно срабатывать выделение жирным шрифтом (например, мне для этого нужно будет поставить галочку в собственном чекбоксе CTRL и в собственном комбобоксе выбрать букву "B"). в результате, текст будет выделяться жирным шрифтом именно по такому сочетанию клавиш.
2. теперь я набираю текст в RichTextbox - и нажимаю сочетание CTRL+В - и у меня текст должен выделиться жирным шрифтом.

!!! Если я хочу заменить данную комбинацию клавиш для выделения жирным шрифтом (CTRL+B), я просто беру и меняю в этом функционале и назначаю другую комбинацию.

у меня есть варианты по решению данной проблемы, но это куча if else ... - и это не целесообразно, поэтому нужно другое решение. еще возникает проблема как это все раздельно сделать, т.е. чтобы для каждой операции (жирно,курсив...) - нужно отвести группу его чекбоксов CTRL , ALT, SHIFT и комбобокс с буквами. - чтобы для каждой операции были отдельные группы чекбоксов с комбобоксами. + еще вопрос, как это все хранить при каждом изменении??!!

p.s. кому не понятно про UI, я скинул скриншот UI который будет использоваться.
14
15 апреля 2010 года
Phodopus
3.3K / / 19.06.2008
Я плохо знаю NET но попробую объянить алгоритм. Надо составить пары комбинация - действие. В качестве комбинации дожна быть сущность однозначно идентифицирующая конкретную комбинацию клавиш, в качестве действия - делегат на выполняемый метод. Далее из указанных пользователем комбинаций составляется массив (можно и хеш-таблицу), а при нажатии клавиши формируется текущая комбинация и ищется в этом массиве. При успешности поиска вызывается соответствующий делегат - выполняется метод. А может в NET есть и пути попроще.
54K
15 апреля 2010 года
Proximus
11 / / 11.04.2010
да в принципе, вариант норм. подумаю над ним) спс
297
16 апреля 2010 года
koodeer
1.2K / / 02.05.2009
Цитата: Proximus
Скажите, как можно сделать собственный функционал по назначению горячих клавиш и последующему их использованию.


Показали бы вы ещё графический интерфейс своей программы. Надеюсь, вы не изобретаете велосипед, а используете классические меню - MenuStrip и тулбар - ToolStrip? Тогда использование шорткатов сводится к назначению выбранной комбинации свойству ShortcutKeys этих компонентов.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог