我的表单上显示了一个网络摄像头提要,并且想在其上绘图。我本来打算使用图片框来完成此操作,但我发现 PictureBox 不支持真正的透明度,而只支持其所在表单的颜色。它也不支持字母混合,这就是我希望它显示的方式,类似于表单的显示方式。
有谁知道如何做到这一点?或者有一个可以做到这一点的控件吗?
Windows 窗体中的透明度有点被破坏。正如您所发现的,它并不真正支持重叠控件;它实际上支持重叠控件。它只是通过透明部分显示表单的背景颜色。借助一些 Windows API 魔法,您可以使许多控件显示为真正透明并支持重叠,例如鲍勃·鲍威尔 (Bob Powell) 的这篇文章展示了。我已经能够使他的技术适用于标签和自定义控件,但我想我已经尝试使其适用于PictureBox
结果令人失望。一种解决方法是尝试创建一个手动绘制图像的自定义控件;我没试过。这是论坛帖子我在其中演示了一个支持真正透明度的自定义控件(我在该论坛上的名称是 AtmaWeapon。)我的记忆似乎表明这最适合自定义控件,因为 Microsoft 的控件在渲染时会发生一些明显的魔力。
或者,您可以使用 WPF 而不是 WinForms 来实现您的应用程序。 WPF 的透明度有效并支持重叠控件。这对于开发应用程序的方式来说是一个相当大的转变,但它从一开始就有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)