您的位置:首页 > 编程语言 > Delphi

Delphi中如何获得光标

2016-02-05 14:23 597 查看
就是我想在程序中使光标所在的文本框标一个颜色,当光标一走的时候又回到原来的颜色

可以截获WM_SETFOCUS、WM_KILLFOCUS消息:
type
TForm1 = class(TForm)
Memo1: Edit;
private
procedure WMSetFocus(var Msg: TMessage); message WM_SETFOCUS;
procedure WMKillFocus(var Msg: TMessage); message WM_KILLFOCUS;
public
{ Public declarations }
end;

procedure TForm1.WMSetFocus(var Msg: TMessage);
begin
if TObject(Msg.LParam) = Memo1 then
Memo1.Color := clRed;
end;

procedure TForm1.WMKillFocus(var Msg: TMessage);
begin
if TObject(Msg.LParam) = Memo1 then
Memo1.Color := clWhite;
end;

响应Edit的两个事件:

onMouseEnter和onMouseLeave。

在前一个事件中设置颜色,在后一个事件中改回原来的颜色。

procedure
TForm1.Edit1MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

edit1.Color:=clred;

end;procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

edit1.Color:=clWindow;

end;

那你在onenter和onexit事件里去写代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: