使用memo组件,有两个问题:1.不知道怎么设置他的背景图片。到底能不能设置呢?
2.我想在memo组件里面的文字里,每行都加 下横线,横线也是个图片,可以定制,不是简单的一条横线。不知如何实现?如果这两条不好实现,现在的有没有这样改进的memo组件?如果没有,我要是自己写的话,大家给点思路?初学,谢谢!!!!
2.我想在memo组件里面的文字里,每行都加 下横线,横线也是个图片,可以定制,不是简单的一条横线。不知如何实现?如果这两条不好实现,现在的有没有这样改进的memo组件?如果没有,我要是自己写的话,大家给点思路?初学,谢谢!!!!
谢谢!!!!!!!!!
2.www.51delphi.com
如果你仔细找,能找到的,祝你好运
再踢一下。
昨天看超级猛料2003,有下面所述:
------
将一个FORM变成透明的实质性手段就是拦截CMEraseBkgnd消息。unit Utransform; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm)private { Private declarations }public { Public declarations }PROCEDURE CMEraseBkgnd(var Message:TWMEraseBkgnd);Message WM_ERASEBKGND;end;var Form1: TForm1;implementation{$R *.DFM}PROCEDURE Tform1.CMEraseBkgnd(var Message:TWMEraseBkgnd);BEGINbrush.style:=bsClear;Inherited;END;end.//////////////////////////////////////procedure TForm1.FormCreate(Sender: TObject);beginForm1.Brush.Style := bsClear;Form1.BorderStyle := bsNoneend;procedure TForm1.BitBtn1Click(Sender: TObject);beginApplication.Terminate;end;/////////////////////////////////////////////用透明的控件呗. 一般继承自TGraphicControl的(就是那些没有handle属性, 不能有focus的控件, 如image)都有Transparent属性. 对TWinControl类的控件, 要实现透明只要完成以下三步基本上就成了.1. override 它的CreateParams方法, exstyle 里加上WS_EX_TRANSPARENT.2. 修改它的parent的window style, 去掉WS_CLIPCHILDREN.3. 截获WM_ERASEBKGND, 什么都不做直接返回1.一般有上面3步能成. 有些控件比如TPanel, 在它的paint中用了fillrect, 所以要实现透明的话还要override 它的paint方法, 自己画.按钮透明需要进一步处理.createparams里加上style := style or BS_OWNERDRAW;然后在WM_DRAWITEM中自己画吧
----------------------
我正在用的一套三方控,
其中有一个叫TLMDmemo的控件
可以做到你的效果,
你只需配置好它的个县属性就是了!
---------------------------------
怎样?有兴趣联系吧!
强烈推荐!!!!!!!!!!!!!!!!!!!unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ComCtrls, ExtCtrls, jpeg;type
TForm1 = class(TForm)
Image1: TImage;
RichEdit1: TRichEdit;
procedure ClassWndProc(var Msg: TMessage);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
wproc: pointer;
oldproc:TWndMethod;
bb:hBrush ;
implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
oldproc:=RichEdit1.WindowProc;
RichEdit1.WindowProc:=form1.ClassWndProc;
SetWindowLong(RichEdit1.Handle, GWL_EXSTYLE, GetWindowLong(RichEdit1.Handle,GWL_EXSTYLE) or WS_EX_TRANSPARENT);
end;
procedure Tform1.ClassWndProc(var Msg: TMessage);begin
if msg.Msg= WM_ERASEBKGND then msg. result:=1
else if (msg.Msg = CN_CTLCOLORMSGBOX )or(msg.Msg = CN_CTLCOLORSTATIC ) then
begin
bb:=null;
msg. result :=bb
end
else
oldproc(msg)
end;end.