csplitter.pas

来自「控件作用: 自动创建SQL数据库(可以同时间创建多个数据库) 控件用法: 」· PAS 代码 · 共 50 行

PAS
50
字号
unit cSplitter;

interface

uses
  Windows, Messages, SysUtils, Classes, Controls, ExtCtrls;

type
  TcSplitter = class(tsplitter)
  private
    { Private declarations }
    FOnRClick: TNotifyEvent;
    FMaxSize: Integer;
    FMouseDownXPos: Integer;
  protected
    { Protected declarations }
    procedure CapMouseDown(var Msg: TMessage); message WM_RBUTTONDOWN;
    procedure CapMouseUp(var Msg: TMessage); message WM_RBUTTONUP;
  public
    { Public declarations }
  published
    { Published declarations }
    property OnRClick: TNotifyEvent read FOnRClick write FOnRClick;
    property MaxSize: Integer read FMaxSize write FMaxSize;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('ZZCC', [TcSplitter]);
end;

{ TcSplitter }

procedure TcSplitter.CapMouseDown(var Msg: TMessage);
begin
  FMouseDownXPos := Left;
end;

procedure TcSplitter.CapMouseUp(var Msg: TMessage);
begin
  if (FMouseDownXPos = Left) and Assigned(FOnRClick) then
    FOnRClick(Self);
end;

end.

⌨️ 快捷键说明

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