设置Richedit背景透明,效果还可以,但是设置Memo和Edit等时效果不是很理想。代码来源与CSDN社区。
提供两种方法,其实两种方法大同小异。
第二种方法
type
TTransparentGroupBox = class(TCustomGroupBox)
private
procedure WMEraseBkGnd(var Msg: TWMEraseBkGnd); message WM_ERASEBKGND;
protected
procedure CreateParams(var Params: TCreateParams); override;
published
//....
end;
implementation
procedure TTransparentGroupbox.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle := Params.ExStyle or WS_EX_TRANSPARENT;
end;
procedure TTransparentGroupbox.WMEraseBkGnd(var Msg: TWMEraseBkGnd);
begin
SetBkMode(Msg.DC, TRANSPARENT);
Msg.Result := 1;
end;
发表于 @ 2005年06月14日 23:37:00 | 评论( loading... ) | 举报| 收藏