透明的非客户区
我正在使用 Windows 窗体创建一个 TextBox 控件子类。我正在使用 WM_NCCALCSIZE 更改客户区(以扩大非客户区),但我还没有找到任何关于如何使非客户区透明的解决方案。 是否有任何简单的方法可以以透明方式绘制 WM_NCPAINT 中的非客户区域,以在子控件的相交区域中复制底层窗口的背景?
I am creating a TextBox control subclass using Windows Forms. I am using the WM_NCCALCSIZE to change the client area (to enlarge the non-client area) but I have not found any solution on how to make the non-client area transparent.
Is there any simple way to paint to non-client area in WM_NCPAINT in transparent way to duplicate the underlying window's background in intersecting region of the child control?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
UpdateLayeredWindow 正是您所需要的。
http://msdn.microsoft .com/en-us/library/windows/desktop/ms633556%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms997507.aspx
UpdateLayeredWindow is what you need.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633556%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/ms997507.aspx