【问题标题】:Set transparent background image设置透明背景图片
【发布时间】:2014-04-15 19:05:41
【问题描述】:

我需要设置一个透明且不透明度为 100% 的背景图像。
它的意思是程序启动时的“加载屏幕”。
我希望它是透明的,并且我正在使用一个没有边框样式的新表单。

我不是在寻找这个解决方案:

public Form1()
{
    this.TransparencyKey = Color.Turquoise;
    this.BackColor = Color.Turquoise;
}

因为图片的不透明度低于 100%,这实在令人不满意。
而且我也不想使用表单的不透明度来解决这个问题,因为我已经将它用于表单的一种“淡入”。

有人知道怎么做吗?也许有一种更简单的方法可以做到这一点,我不知道?

对不起,我的英语不好。
问候。

【问题讨论】:

标签: c# winforms transparent


【解决方案1】:

这类似于this question,您可以使用link in the solution suggested there。它使用 32 位 PNG 图像和 GDI 函数。我还没有下载源代码,但是为了实现对Win32调用的处理,你可以使用pinvoke页面,在那里你应该可以找到有关相应功能的信息,例如GetDCSelectObject或@ 987654326@.

【讨论】:

  • 是的! UpdateLayeredWindow 可以解决问题,但表单中不能有任何控件。在这个例子中没有问题,因为它只是一个加载屏幕。
  • 感谢您的解决方案。这很困难,但我会尝试这样做
  • 如果您需要更多信息,请告诉我,我会尝试更新答案并提供更多详细信息。
  • 我很高兴它有帮助:)。
猜你喜欢
  • 2011-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-16
  • 2017-03-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多