8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

Форум 1С: Одинэс.Ру

Найти!

8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
08.05.2009 - 05:41
Добрый день.
Необходимо в ВК добавить метод, который будет ставить ХУК на нажатие клавиши в определенной форме.
Хук поставить не проблема, но для этого нужно знать хендл окна, на котором хук будет висеть, вот как раз в этом то и проблема. Подскажите как можно этот самый хендл получить по заголовку окна.
К списку тем К списку форумов

Интересные темы

odines.ru
21.11.2024 - 20:59
Смотри также:
Запрос
Подразделения
Работа с ЦУП (Центр Управления Производительностью)

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

ЖКК
1 - 08.05.2009 - 06:59
FindWindow
FindWindowEX
EnumChildWindows

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
2 - 08.05.2009 - 07:58
спасибо.

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
3 - 08.05.2009 - 12:02
Появилась еще одна проблема:
Нахожу главное окно 1С, поиском нахожу дочернее окно, на которое необходимо повесить перехват клавиш. После этого делаю:
RegisterHotKey(hw, id_key, 0, Ord('A'));
где hw - handle дочернего окна 1С, id_key - уникальный идентификатор.
После этого в 1С жму кнопку 'ф' - она не нажимается, процедура WMHotKey(var msg: TWMHotkey) не отрабатывает, да и перехват устанавливается не только на дочернее окно но и вообще на все. Т.е. я ни в одном приложении не могу теперь нажать кнопку 'ф'.
Подскажите что может быть.

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

vip
4 - 08.05.2009 - 12:21
(0) Переходи на 7.7+FormEx
Там это все есть.

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
5 - 08.05.2009 - 12:36
мне для восьмерки надо :-)

Интересные темы

odines.ru
21.11.2024 - 20:59
Смотри также:
v8: УТ - учет возвратной тары
Межотчетный период Бухгалтерия 8.1
Бух. Начисление платы за аренду автотранспорта и удержание НДФЛ

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
6 - 08.05.2009 - 12:59
Проблема кажется нашел(правда не уверен что это единственная проблема), а вот как обойти ее не знаю.
Так я ищу форму своей программы: hW:=FindWindow(nil,'Project1');
и если я вызову RegisterHotKey(hw, id_key, 0, Ord('A')); то нифига хорошего из этого не выйдет, а вот так вот отработает RegisterHotKey(Form1.Handle, id_key, 0, Ord('A'));
т.е. Form1.Handle не равно FindWindow(nil,'Project1').
Как тогда по другому найти хендл окна???

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

НовенькийЯ
7 - 08.05.2009 - 16:12
как выяснилось проблема не в том что возвращается правильный/неправильный хендл искомого окошка. Проблема в том что RegisterHotKey нужно запускать в потоке самой 1С иначе ничего не получится. Но что то я пока не знаю как это сделать

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

Чучундер
8 - 08.05.2009 - 21:54
7-НовенькийЯ > еще раз читаем (4), отмазка (5) не катит..

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

VZ
9 - 09.05.2009 - 05:15
Непонятна задача... В "восьмерке" на каждый элемент навешиваются предопределенные функции (тот же хук), и нафига козе гармонь?

Re: 8.1+Delphi. Как получить handle дочернего окна(формы отчета/справочника/и т.д.) по заголовку этого окна?

Исчо
10 - 09.05.2009 - 12:28
(9)Козе гармонь для портфолио, надо полагать.
К списку тем К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« Нужна выгрузка сотров из Зарплаты 8 Раскраска объектов макета »
© 2009 Форум 1С: Одинэс.Ру