Как лучше сделать хоткеи?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Как лучше сделать хоткеи?

Сообщение alibek » 29.04.2008 (Вт) 8:10

Есть у меня программа, на которой размещен компонент Shockwave Flash.
В программе есть меню, в которые я хочу добавить нестандартные акселераторы, такие как Ctrl+Enter, Esc и т.д.
Просто поставить на форме KeyPreview=True и обрабатывать Form_KeyDown не получится, события не происходят (из-за флеша). По той же причине не применим сабклассинг с отлавливанием сообщений WM_KEYDOWN, они просто не происходят.
Попробовал поиграться с AcceleratorTable, но там неожиданная проблема. В message loop надо вызывать TranslateAccelerator, а как добраться до него не соображу.
Конечно есть еще GetAsyncKeyState, но его хотелось бы избежать.
Lasciate ogni speranza, voi ch'entrate.

_igor_
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 25.08.2007 (Сб) 14:00

Сообщение _igor_ » 29.04.2008 (Вт) 8:37

Может подойдет библиотека directx которая обрабатывает input? Где-то она у меня была.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 29.04.2008 (Вт) 10:26

А просабклассить флеш?
Лучший способ понять что-то самому — объяснить это другому.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 35

    TopList