| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Отловить и запретить Ctrl+Tab |
| Автор: Pakshin A. S. 29.12.2008, 13:37 |
| Суть проблемы: программа должна переключаться между компонентами ввода текста типа Memo, RichEdit и т.п. по Ctrl+Tab. Но при нажатии этой комбинации клавиш, в компонент с текстом вставляется табуляция, что ни в коем случае не должно делаться. Вариант посылки какого-нибудь Backspace не годится, так как компонент имеет флажок изменяемости и еще много наворотов на изменчивость содержания. Единственным выходом вижу следующиий алгоритм: 1) Отловить Ctrl+Tab. 2) Запретить табуляцию в активном компоненте. 3) Осуществить переключение. Жду советов по пункту №2. Кстати, компонент, на котором валяются области ввода - TabControl. |
| Автор: bems 29.12.2008, 20:07 |
| если нужно для одного класса, то пиши наследника |
| Автор: Pakshin A. S. 30.12.2008, 10:05 |
| Пример в студию, пожалуйста... |
| Автор: Rrader 30.12.2008, 15:36 |
| Pakshin A. S., нужно, чтобы Ctrl+Tab полностью эмулировал Tab (фокус может уходить на тот же PageControl), или сделать переключение только между компонентами ввода? |
| Автор: Pakshin A. S. 30.12.2008, 16:54 |
| Переключалка между вкладками с условием, что Ctrl+Tab не отрабатывается в компоненте ввода текста. Решилась перехватом CN_KEYDOWN в классе компонента ввода текста... |
| Автор: Christoph 3.1.2009, 13:52 |
| А можно увидеть решение? |