Это будет ошибкой, если вы измените размер формы на ранее прозрачную область, события мыши больше не будут обнаружены на ней.События мыши на форме больше не обнаруживаются, если она изменена до ранее прозрачной области
Как воспроизвести:
- Создать новую форму проекта для Windows
- Набор Form1 TransparencyKey для Magenta
- Добавить панель в Form1 и сконфигурировать его как: заполнить
- Dock
- BackColor to Magenta
Запустите, теперь попробуйте изменить размер формы, если вы уменьшите ее (достаточно, чтобы новая рамка была размещена над текущей прозрачной областью), мышь больше не будет «обнаруживать» границу окна с этой стороны. Если вы минимизируете/восстанавливаете окно, оно будет работать снова. Как я могу это исправить? Я попробовал Refresh on Form Layout/Resize событие, но это не сработало.
Hahaha, соглашайтесь! Спасибо. RecreateHandle() исправляет проблему, и нет необходимости переопределять ее, я добавил ее в событие OnLayout, но она мигает. Интересно, есть ли лучшее решение. – Pedro77