【问题标题】:Semi transparent PictureBox c#半透明PictureBox c#
【发布时间】:2016-03-05 03:58:39
【问题描述】:

我想让 PictureBox 半透明:在背面显示图片框的内容,而不是表单的基色。

我的项目

前面的小图片框显示表单(控件)的背面颜色(它有“透明”作为背景颜色),但我想显示颜色红色(大图片框的背景图像)。我该怎么做?

【问题讨论】:

  • 用 WinForms 强硬地问,不是开玩笑,我是认真的...
  • 看看thisthis
  • 您在后台看到父级。通常是窗体,而不是另一个 PictureBox,除非您在代码中分配 Parent 属性。检查this post中的PictureContainer类。
  • 除非使用 nested 控件,否则 Winform 中没有透明度。正如汉斯所说,要嵌套在 PB 中,您需要对其进行编码..:picBoxSmall1.Parent = picBoxbig; picBoxSamll.Location = ....
  • 红框是图片框吗?

标签: c# picturebox transparent


【解决方案1】:

这可能无法完全回答您的问题,如果没有帮助,我可以删除我的答案。我不确定我是否完全理解。如果您的背景图像将是具有单一颜色的简单 PictureBox,则以下代码应该可以工作。

pictureBox1 - 一个简单的星星的图像

pictureBox2 - 我的红色背景图片

Bitmap b = new Bitmap("Star.png");
b.MakeTransparent(Color.White);
pictureBox1.Image = b;
pictureBox1.BackColor = pictureBox2.BackColor; 

之前:

之后:

【讨论】:

  • 如果背景图像不是简单的颜色,此代码是否有效?例如某个世界区域的地图
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-19
  • 2011-10-12
  • 2018-12-03
  • 2017-03-27
  • 1970-01-01
  • 2015-03-14
  • 1970-01-01
相关资源
最近更新 更多