unit SliderMemo;
interface
uses Windows, Messages, SysUtils, Classes, Graphics,Controls,StdCtrls,Dialogs,
ExtCtrls;
type
TSliderMemo = class(TMemo)
private
FOnLoop:TNotifyEvent;
FTopNow:integer;
FScrollSpeed: integer;
FTimer: TTimer;
FCanvas :TControlCanvas;
procedure SetScrollSpeed (Value: integer);
procedure wmPAINT(var Message: TMessage); message WM_PAINT;
procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;
procedure toPAINT;
procedure Timer(Sender: TObject);
protected
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
public
constructor Create (AOwner: TComponent); override;
destructor Destroy ; override;
Procedure Start;
Procedure Stop;
published
property ScrollSpeed: integer read FScrollSpeed write SetScrollSpeed default 10;
property OnLoop: TNotifyEvent read FOnLoop write FOnLoop;
end;
procedure Register;
implementation
var
Initial:boolean;
TxtHeight:integer;
procedure Register;
begin
RegisterComponents(’Geert’, [TSliderMemo]);
showmessage(’The TSliderMemo component is made by LinDesheng 2002-07’);
end;
{ ******************************************************* }
procedure TSliderMemo.wmPAINT(var Message: TMessage);// Repaint the control ...
begin
inherited;
toPaint;
end;
{ ******************************************************* }
责任编辑:小草