将AlphaBlend属性添加到面板

时间:2013-10-03 15:25:33

标签: delphi delphi-7

我想在我的系统中制作一个半透明的面板,比如AlphaBlend属性,但是这个属性仅适用于Tform而不是Tpanel。如何使面板半透明。

1 个答案:

答案 0 :(得分:2)

在Windows 8之前,子控件不能应用WS_EX_LAYERED窗口样式。这就是非TForm组件没有AlphaBlendTransparentColor属性的原因。您要求的是不可能使用标准组件。即使您创建了自定义所有者绘制的组件,您仍然会对系统进行操作,因为您必须将其绘制到组件的Parent上以实现所需的效果。您可以尝试四处寻找第三方解决方案,但是您不太可能找到很多选项,因为使用半透明的子控件并不常见。

话虽如此,您可以尝试的一个简单选项是将TPanel置于单独的无边框无标题半透明TForm上,将面板TForm放在父TForm区域上TPanel 1}}您希望TForm出现在哪里(但不要设置面板​​Parent的{​​{1}}属性,否则此练习将无效)然后移动面板{{1}每当它移动时与父TForm同步。