【问题标题】:c# WinForms: Make part of the Form transparentc# WinForms:使表单的一部分透明
【发布时间】:2014-09-17 05:24:51
【问题描述】:

我有Form1,其中包含带有错误消息和一些按钮的背景图像,并在发生错误时显示。我必须使Form1 的一部分透明,而另一部分将包含错误消息并且它是不透明的。这是一些插图。

Form1 的灰色部分必须说是 80% 透明。我怎样才能实现它?

到目前为止,我已经尝试过使用Opacity,但它使整个框架变得透明。请帮我解决这个问题,我今天真的需要做这个,非常感谢。

【问题讨论】:

  • 你如何显示错误信息(用什么控件)
  • 感谢提醒。我在 Form1 上添加了背景图像,图像包含错误代码。我想这会让任务变得更加复杂。
  • 你可能想搜索semi-transparent c# form,一旦你知道了 - 你可以解决你的任务。第一个结果是this
  • 您始终可以通过使用两种形式来解决问题,一种是半透明的 (Opacity=0.7f),另一种居中位于其上方。在其移动事件中将可移动的外部与另一个无标题的同步
  • 您正在寻找UpdateLayeredWindow 函数。从 WinForms 完成这项工作并不容易。您将编写大量 P/Invoke 代码,并且从您提出这个问题的方式来看,您已经完全超出了您的想象。请记住,这种透明度很少能起到有用的作用。你展示的图片让我的眼睛受伤了。

标签: c# winforms opacity transparent


【解决方案1】:

将 BackColor 和 TransparencyKey 设置为相同颜色

【讨论】:

  • 谢谢。但这不是我想要的。它使表单的灰色部分完全透明。我想让它透明 70-80% 。换句话说,我想将此部分的不透明度设置为 70-80%
猜你喜欢
  • 2010-10-26
  • 2010-12-05
  • 2014-12-11
  • 2010-09-28
  • 1970-01-01
  • 1970-01-01
  • 2010-11-15
  • 2011-05-17
相关资源
最近更新 更多