在VB6中使.net控件透明

本文关键字:控件 透明 net 中使 VB6 | 更新日期: 2023-09-27 18:11:45

所以我有这个问题,我在c# . net中创建一个控件,我可以在VB6中使用它。然而,由于你不能在vb6的。net容器中放置无边界控件,我尝试制作一个特殊的。net标签,并将其暴露给vb6。

我可以让这个标签在我的表单上很好,但是我不能让它透明。

我试过使用UserControl_AmbientChanged,但Ambient.BackColor似乎总是形式的颜色,而不是实际的父母的颜色(说,一个框架)。同样的,当我使用UserControl.Parent,然后父母的背景色。Extender.Parent也一样。即使它可以工作,在背景是图像的情况下也不会很漂亮。

我试过使用SetWindowLong,但这只是使整个标签不可见/透明,没有考虑到标题。

我试过使用这里发现的bliting技术:http://www.vbforums.com/showthread.php?438895-transparent-text-box-or-label-with-scrollbars&highlight=transparent%20TextBox但这不起作用,因为我的控件不是PictureBoxes。

我没办法了,以前有人这样做过吗?如何?如有任何帮助,我将不胜感激。

在VB6中使.net控件透明

如果我正确理解您的情况,您将希望将。net用户控件背景颜色设置为不同的颜色(例如带有特定HEX颜色代码的粉红色)。然后在你的VB6应用程序中,你将设置相同的颜色代码(粉红色)为属性表中的透明颜色。

我已经用这种方式处理VB6用户控件的透明度好几年了,它似乎工作得很好。

至于关于VB6在2013年用于企业应用程序的评论,这些人显然没有在软件行业工作很长时间:)VB6已经在数以百万计的企业应用程序中实现,这些应用程序今天仍在使用。我想问那些发表评论的用户一个问题,你如何在其他语言中提供VB6 ActiveX控件的功能?