Сделать дочернее окно прозрачным для пользовательского ввода - PullRequest
1 голос
/ 04 декабря 2009

Есть ли способ сделать так, чтобы ввод проходил через дочернее окно и доходил до его родителя? Моя проблема заключается в следующем: я делаю пользовательский элемент управления с меткой, которую можно отформатировать. Поэтому вместо того, чтобы пытаться заново изобрести колесо, я добавил элемент управления RichTextEdit и применил расширенный стиль окна WS_EX_TRANSPARENT. Похоже, что я хочу, но есть очевидные проблемы с фокусировкой и вводом. Есть ли эффективный способ передачи сообщений дочернего окна родителю или применения набора стилей, чтобы дочернее окно выглядело как текст, нарисованный на кнопке?

Ответы [ 3 ]

1 голос
/ 06 декабря 2009

Вы можете сделать это довольно легко, переопределив сообщение WM_NCHITTEST и вернув HTTRANSPARENT. Обязательно выключите WS_TABSTOP также, чтобы элемент управления не мог быть вставлен в.

0 голосов
/ 04 декабря 2009

Вы пытались установить TabStop False и Locked True?

Извините, если вы уже попробовали.

0 голосов
/ 04 декабря 2009

Вы можете использовать PostMessage для отправки сообщений Windows в ваше дочернее окно.

...