代码之家  ›  专栏  ›  技术社区  ›  Alistair Evans

半透明面板背景

  •  1
  • Alistair Evans  · 技术社区  · 16 年前

    我有一个面板,它位于渲染视频的控件顶部。我有控制(按钮等),在面板上,我想完全不透明。现在,通过重写CreateParams属性,可以创建透明面板背景。但是,如何在保持按钮完全不透明的同时,使面板具有半透明(~50%不透明度)背景?

    我正在使用.NET2.0。

    2 回复  |  直到 16 年前
        1
  •  2
  •   Alistair Evans    15 年前

    最后,事实证明这是不可能的,在WinForms中,在面板上设置透明度简直是垃圾。

    我使用的解决方法是在给定的曲面上手动渲染控件,并适当地修改alpha值。

        2
  •  1
  •   Jason Musgrove    16 年前

    您可以使用两个面板,一个放置在另一个面板中。外部面板没有背景,并承载内部面板和控件,而内部面板(其Z索引将其放置在控件后面)提供半透明背景。

    我承认我是在没有实际验证这是否有效的情况下提出这个建议的。。。