Могу ли я иметь окно с альфой, которое я могу щелкнуть через 100% прозрачные части окна? Я ищу общее решение, не основанное на расширении форм.X11 прозрачное окно: только через клик, где alpha = 0
- В Windows это делается установкой WS_EX_TRANSPARENT.
- В OSX это делается установкой setIgnoresMouseEvents (true).
- В X11 это делается ...?
У меня нет проблемы с тем фактом, что это расширение, но с тем, что я должен определить битную маску для всего окно, которое я должен перерисовывать каждый раз, когда само окно перерисовывается. Таким образом, нет более прямого способа, например, в Windows и OSX? – cap
Не то, чтобы я знал. Сожалею. Имейте в виду, что если вы не используете компоновщик X-сервера, сервер должен знать, какой формой будет ваше окно для рисования клипов на любых окнах под ним. Если он должен был «спросить» ваше приложение о каждом пикселе, нарисованном под вашим окном, производительность будет мрачной. – duskwuff
Вам не нужно перерисовывать маску, когда обновляется содержимое окна, они являются отдельными (но могут потребоваться, если их изменить размер) –