delphi中,panel控件如何实现透明化,请高手指点

如上面所说

使用第三方控件RzPanel,有transparent属性,设置为true即可
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-17
利用PanelTransparent这个unit来实现即可。
unit PanelTransparent;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls;
type
TPanelTransparent = class (TPanel)
private
procedure CnCtlColorStatic (var Msg: TWMCtlColorStatic); message CN_CTLCOLORSTATIC;
procedure WmEraseBkgnd (var Msg: TWMEraseBkgnd); message WM_ERASEBKGND;
procedure Paint; override;
protected
procedure CreateParams (var Params: TCreateParams); override;
end;
procedure Register;

implementation
procedure Register;
begin
RegisterComponents ('AppMic', [TPanelTransparent]);
end;
procedure TPanelTransparent.CreateParams (var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle := Params.ExStyle or WS_EX_TRANSPARENT;
end;
procedure TPanelTransparent.WmEraseBkgnd(var Msg: TWMEraseBkgnd);
begin
Msg.Result := 1;
end;
procedure TPanelTransparent.CnCtlColorStatic(var Msg: TWMCtlColorStatic);
begin
SetBKMode (Msg.ChildDC, TRANSPARENT);
Msg.Result := GetStockObject (NULL_BRUSH);
end;
procedure TPanelTransparent.Paint;
begin
SetBKMode (Handle, TRANSPARENT);
//inherited;
end;
end.
第2个回答  2013-05-26
你说的透明化,什么意思?
delphi中,panel控件如何实现透明化,请高手指点
使用第三方控件RzPanel,有transparent属性,设置为true即可

Delphi中如何实现半透明Panel
实现半透明Panel的代码如下:unit Glass;interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ExtCtrls;type TGlassStyle = (gsBlackness, gsDstInvert, gsMergeCopy, gsMergePaint, gsNotSrcCopy,gsNotSrcErase, gsPatCopy, gsPatInvert, gsPatPaint, gsSrcAnd,gs...

delphi里的panel和groupbox控件有什么区别?
在Delphi编程中,panel控件和groupbox控件都是常用的布局控件,但它们的功能和用途有所不同。Panel控件通常用作工具条或状态栏,它可以容纳多种控件,如按钮、标签等,用于实现特定的功能或显示状态信息。Panel控件没有自带的标题或标签,因此它通常用来创建自定义的工具栏或状态栏。通过设置Panel的边框样式和...

delphi groupbox放在panel中不能改变颜色
你大概用了TXPManifest 或者类似的 XP 皮肤控制,grouptbox 运行时背景变成透明的了。

MDI窗口如何将Panel等控件置于窗体底层 delphi
放一个panel控件(panel1)在窗体上,panel控件的align属性设置为alclient,然后再添加一个panel控件(panel2)放置在panel1的上面,设置其align属性为alleft,然后你往panel1上添加任何组件或窗体都不会在左边了,而且Panel1控件置于底层.

delphi中在panel控件上怎样再加panel控件并让子panel控件完全位于主panel...
把第二个panel的Align属性设置为altop

delphi 中RadioGroup 控件能不能加个ScrollBar 控件 ,我radiogroup 控件...
新建一个应用程序,在窗体上放一个ScrollBox1(此组件在ADDTIONAL页里),再在ScrollBox1里放一个RadioGroup1(在STANDARD里),调整这两个组件的位置,其余的你应该明白了!

...delphi窗体里面加一个程序运行时可以移动的控件,求大家指点下,思考...
最简单的方法1,:你只要将你的控件放在 ControlBar1里就可以移动你的控件了。2:另就是需要写代码来实现。

delphi最大化 怎么让控件相对位置不变
对于 delphi 里大多数可显示控件来说,都有 Anchors 属性。此属性用于设置控件的位置在窗体大小等发生改变时所基的“锚”点。通常来说,缺省的设置是 akLeft 和 akTop,即当控件所在窗体(容器类)大小位置发生改变时,控件的左、上边(距离)保持不变:如果控件的位置发生了偏移,建议检查控件是否在...

delphi中怎么样给panel添加自定义颜色的边框
1、先在单元里定义一个同名的 TPanel 类:type TPanel = class(Vcl.Extctrls.TPanel) public procedure Paint; override; end;procedure TPanel.Paint;begin inherited; Canvas.Pen.Color := clRed;\/\/边框为红颜色 Canvas.Rectangle(ClientRect);end;2、此时,在 IDE 里添加一个 TPan...

相似回答