myedit.pas

来自「在delphi中实现windows核心编程.原书光盘代码核心编程.原书光盘代码」· PAS 代码 · 共 48 行

PAS
48
字号
unit myedit;

interface

uses
Windows,Messages,SysUtils,Classes,Graphics,Controls,Forms,Dialogs,
StdCtrls;

type
 Tmyedit=class(TEdit)
 private
  {Privatedeclarations}
 protected
  {Protected declarations}
  {other fields and methods}
 procedure wndproc(var message:Tmessage);override;//重载
 public
  {Publicdeclarations}
 published
  {Publisheddeclarations}
 end;

procedure Register;

implementation

procedure Register;//在IDE中进行注册
begin
 RegisterComponents('Samples',[Tmyedit]);
 //注册到Samples页中,控件名是Tmyedit
end;

procedure Tmyedit.wndproc(var message:tmessage);
begin
 if message.msg=wm_mousemove then
 begin
  {设置光标为crarrow,而不是缺省的crBeam光标}
  cursor:=crarrow;
  exit;
 end;
 {屏蔽掉WM_SetFocus消息,不让Tmyedit控件获得输入焦点}
 if  message.msg=wm_SetFocus  then  exit;{什么也不执行}
 inherited wndproc(message);{其它消息交父辈的wndproc处理}
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?