想学习写一个TEDIT控件,使其输入时color为红色,exit时color为白色,不知如何写? 想学习写一个TEDIT控件,使其输入时color为红色,exit时color为白色,不知如何写?初学请赐教!谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 从TCustomEdit继承,覆盖CM_ENTER,CM_EXIT消息,在CM_ENTER时设置color为红色,CM_EXI时设置时color为白色 我已经写到这里了unit MyEdit;interfaceuses SysUtils, Classes, Controls, StdCtrls,Graphics;type TMyEdit = class(TEdit) private { Private declarations } fentercolor : tcolor; procedure setentercolor(const value : tcolor); protected { Protected declarations } public { Public declarations } constructor create(aowner : tcomponent);override; destructor destroy;override; published { Published declarations } property entercolor : tcolor read fentercolor write setentercolor default clmoneygreen; end;procedure Register;implementationprocedure Register;begin RegisterComponents('Samples', [TMyEdit]);end;{ TMyEdit }constructor TMyEdit.create(aowner: tcomponent);begin inherited; FEnterColor := clmoneygreen;end;destructor TMyEdit.destroy;begin inherited;end;procedure TMyEdit.setentercolor(const value: tcolor);begin FEnterColor := value;end;end.可是不知在哪里写enter及exit的事件?请帮帮忙!谢谢 unit MyEdit;interfaceuses SysUtils, Classes, Controls, StdCtrls,Graphics;type TMyEdit = class(TEdit) private { Private declarations } fentercolor : tcolor; procedure setentercolor(const value : tcolor); procedure CMEnter(var Message: TCMGotFocus); message CM_ENTER; procedure CMExit(var Message: TCMExit); message cm_exit; protected { Protected declarations } public { Public declarations } constructor create(aowner : tcomponent);override; destructor destroy;override; published { Published declarations } // property entercolor : tcolor read fentercolor write setentercolor default clmoneygreen; end;procedure Register;implementationprocedure Register;begin RegisterComponents('Samples', [TMyEdit]);end;{ TMyEdit }procedure TMyEdit.CMEnter(var Message: TCMGotFocus);begin inherited; Self.Color:=clRed;end;procedure TMyEdit.CMExit(var Message: TCMExit);begin inherited; Self.Color:= clWhite;end;constructor TMyEdit.create(aowner: tcomponent);begin inherited; FEnterColor := clmoneygreen;end;destructor TMyEdit.destroy;begin inherited;end;{procedure TMyEdit.setentercolor(const value: tcolor);begin FEnterColor := value;end; }end. 加上这两个事件就可以了 procedure CMEnter(var Message: TCMGotFocus); message CM_ENTER; procedure CMExit(var Message: TCMExit); message cm_exit; 没楼上那么复杂, 重载DoEnter 和DoExit就可以了 TMyEdit = class(TEdit) private ... protected procedure DoEnter; override; procedure DoExit; override; ... end;...procedure TMyEdit.DoEnter;begin Color := FEnterColor; inherited;end; 如何在程序中格式化U盘? MaskEdit 日期格式 delphi tclientdataset DELPHI8如何将字符形转换成整型 急问: 动态创建IMAGE时,有时它的BRUSH的COLOR不能显示 过年快放假了,开心,放点分之7 这是什么意思????????? 关于opendatasource 的问题请教 怎样判断本机安装的是win98 还是 win2000 奇怪,这个问题真奇怪? delphi7安装失败! 关于QuickReport的问题
unit MyEdit;interfaceuses
SysUtils, Classes, Controls, StdCtrls,Graphics;type
TMyEdit = class(TEdit)
private
{ Private declarations }
fentercolor : tcolor;
procedure setentercolor(const value : tcolor);
protected
{ Protected declarations }
public
{ Public declarations }
constructor create(aowner : tcomponent);override;
destructor destroy;override;
published
{ Published declarations }
property entercolor : tcolor read fentercolor write setentercolor default clmoneygreen;
end;procedure Register;implementationprocedure Register;
begin
RegisterComponents('Samples', [TMyEdit]);
end;{ TMyEdit }constructor TMyEdit.create(aowner: tcomponent);
begin
inherited;
FEnterColor := clmoneygreen;
end;destructor TMyEdit.destroy;
begin inherited;
end;procedure TMyEdit.setentercolor(const value: tcolor);
begin
FEnterColor := value;
end;end.可是不知在哪里写enter及exit的事件?请帮帮忙!谢谢
SysUtils, Classes, Controls, StdCtrls,Graphics;type
TMyEdit = class(TEdit)
private
{ Private declarations }
fentercolor : tcolor;
procedure setentercolor(const value : tcolor);
procedure CMEnter(var Message: TCMGotFocus); message CM_ENTER;
procedure CMExit(var Message: TCMExit); message cm_exit;
protected
{ Protected declarations }
public
{ Public declarations }
constructor create(aowner : tcomponent);override;
destructor destroy;override;
published
{ Published declarations }
// property entercolor : tcolor read fentercolor write setentercolor default clmoneygreen;
end;procedure Register;implementationprocedure Register;
begin
RegisterComponents('Samples', [TMyEdit]);
end;{ TMyEdit }procedure TMyEdit.CMEnter(var Message: TCMGotFocus);
begin
inherited;
Self.Color:=clRed;
end;procedure TMyEdit.CMExit(var Message: TCMExit);
begin
inherited;
Self.Color:= clWhite;
end;constructor TMyEdit.create(aowner: tcomponent);
begin
inherited;
FEnterColor := clmoneygreen;
end;destructor TMyEdit.destroy;
begin inherited;
end;{procedure TMyEdit.setentercolor(const value: tcolor);
begin
FEnterColor := value;
end; }end.
procedure CMEnter(var Message: TCMGotFocus); message CM_ENTER;
procedure CMExit(var Message: TCMExit); message cm_exit;
private
...
protected
procedure DoEnter; override;
procedure DoExit; override;
...
end;...procedure TMyEdit.DoEnter;
begin
Color := FEnterColor;
inherited;
end;