![]() |
|
|
![]()
|
|
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Окно программы не активно или в трее. Как при нажатии клавиши, определённой через THotKey выполнить какое либо действие? У меня - это вставка текста в активное поле ввода, а также свернуть в трей/восстановить из трея. Могут добавиться новые функции.
|
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
Я пологаю хук (Hook) спасет отца русской демократии.
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
А как его можно организовать?
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
ужоснах. Я излазил весь форум, я даже гуглил, ничего конкретного не нашёл. Прошу кого-нибудь, сделайте очень доброе дело, напишите мне код с каментами, как отловить сочетания клавиш, описанных в THotKey, когда программа не в фокусе.
|
|||
|
||||
| 586 |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
.cpp
.h
|
||||
|
|||||
| XPyCT |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 24.8.2007 Где: Moldova Репутация: 10 Всего: 10 |
от меня лично большое мужское спс!
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Да, большое спасибо, наконец-то нашёлся человек, который не поленился сам написать код. 100 постов не имею, так что пишу "+1" в посте. Как данный код прилепить к THotKey подумаю сам.
|
|||
|
||||
| 586 |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Там не сложно это далается:
VCL
WinAPI
|
||||
|
|||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Огромное спасибо. А то я уже решил убиццо(
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Ещё вопрос: Как можно #define хоть сколько hotkey? количество задаётся в программе.
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Ну, кто-нибудь, может, поможет?
|
|||
|
||||
| Stavsandro |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 9.8.2008 Репутация: нет Всего: нет |
Для начала нужно зарегистрировать нужное количество атомов для всех хоткеев.
Делаешь массив типа Word, например Atoms[5], и пишешь такой код:
Затем в цикле зарегистрировать хоткеи:
Только подставь имена переменных свои. Можно сделать один общий цикл, ну это уже кому как нравится... |
||||
|
|||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
GlobalAddAtom для хуков нужен.
А в приложении идентификатор может быть любой от 0 до 0xBFFF. Это сообщение отредактировал(а) 586 - 9.8.2008, 15:14 |
|||
|
||||
| Stavsandro |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 9.8.2008 Репутация: нет Всего: нет |
В принципе да, но ИМХО, лучше зарегистрировать уникальный идентификатор.. |
|||
|
||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Не лучше. Это пустая трата глобальных ресурсов. Читай MSDN:
В приложении идентификаторы от 0 до 0xBFFF не могут ни с чем конфликтовать, а их уникальность должен обеспечивать программист. С этим проблем не должно быть. Это сообщение отредактировал(а) 586 - 9.8.2008, 17:36 |
|||
|
||||
| Stavsandro |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 9.8.2008 Репутация: нет Всего: нет |
Спасибо за документацию.. Буду учитывать |
||||
|
|||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
что-то ниосилил. я это...
|
|||
|
||||
| 586 |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Задай нормально вопрос. Ничего не понятно. Пример чего?
Что здесь непонятного? |
||||
|
|||||
| Great Cornholio |
|
||||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Что-то у меня ощущение лишнего кода в программе:
Ну... Я сделал так: cpp
.h
Здесь всего 6 гор. клавиш. Мне надобно столько, сколько захочет пользователь. Вообще это запоминальщик паролей, причём пока что ламерский. Даже кодировки паролей нет. Но функция быстрой вставки - довольно удобная вещь и меня уже один попросил сделать 7 полей вместо пяти. Так что решил достучаться и узнать, как сделать их столько, сколько нужно юзеру В случае чего программа в рабочем действии здесь Это сообщение отредактировал(а) Great Cornholio - 12.8.2008, 22:41 |
||||||||
|
|||||||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Набросал небольшой пример. Смысл в том, чтобы хранить информацию о хоткее в массиве, а идентификатор хоткея символизирует индекс в массиве. В качестве массива в примере был ListBox.
Хоткеи можно хранить в двух видах - в числовом - HotKey1->HotKey, и текстовом - ShortCutToText(HotKey1->HotKey). Это сообщение отредактировал(а) 586 - 15.8.2008, 23:49 |
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
WinSkinC6.bpi
flash.bpi что-то не нет у меня этих файлов Это сообщение отредактировал(а) Great Cornholio - 15.8.2008, 23:10 |
|||
|
||||
| 586 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 57 Всего: 146 |
Я эти вещи в проекте не использовал. Проект должен собираться без этих файлов. Видимо эти файлы по дефолту в билдере прописались. Присоединённый файл ( Кол-во скачиваний: 16 )
hotkey_test_1_1.rar 13,29 Kb |
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
Круто, спасибо. То, что надо. +1
|
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |