home *** CD-ROM | disk | FTP | other *** search
/ PC World Plus! (NZ) 2001 June / HDC50.iso / Runimage / Delphi50 / Doc / STDCTRLS.INT < prev    next >
Text File  |  1999-08-11  |  25KB  |  842 lines

  1.  
  2. {*******************************************************}
  3. {                                                       }
  4. {       Borland Delphi Visual Component Library         }
  5. {                                                       }
  6. {       Copyright (c) 1995,99 Inprise Corporation       }
  7. {                                                       }
  8. {*******************************************************}
  9.  
  10. unit StdCtrls;
  11.  
  12. {$R-,T-,H+,X+}
  13.  
  14. interface
  15.  
  16. uses Messages, Windows, SysUtils, Classes, Controls, Forms, Menus, Graphics;
  17.  
  18. type
  19.   TCustomGroupBox = class(TCustomControl)
  20.   protected
  21.     procedure AdjustClientRect(var Rect: TRect); override;
  22.     procedure CreateParams(var Params: TCreateParams); override;
  23.     procedure Paint; override;
  24.   public
  25.     constructor Create(AOwner: TComponent); override;
  26.   end;
  27.  
  28.   TGroupBox = class(TCustomGroupBox)
  29.   published
  30.     property Align;
  31.     property Anchors;
  32.     property BiDiMode;
  33.     property Caption;
  34.     property Color;
  35.     property Constraints;
  36.     property Ctl3D;
  37.     property DockSite;
  38.     property DragCursor;
  39.     property DragKind;
  40.     property DragMode;
  41.     property Enabled;
  42.     property Font;
  43.     property ParentBiDiMode;
  44.     property ParentColor;
  45.     property ParentCtl3D;
  46.     property ParentFont;
  47.     property ParentShowHint;
  48.     property PopupMenu;
  49.     property ShowHint;
  50.     property TabOrder;
  51.     property TabStop;
  52.     property Visible;
  53.     property OnClick;
  54.     property OnContextPopup;
  55.     property OnDblClick;
  56.     property OnDragDrop;
  57.     property OnDockDrop;
  58.     property OnDockOver;
  59.     property OnDragOver;
  60.     property OnEndDock;
  61.     property OnEndDrag;
  62.     property OnEnter;
  63.     property OnExit;
  64.     property OnGetSiteInfo;
  65.     property OnMouseDown;
  66.     property OnMouseMove;
  67.     property OnMouseUp;
  68.     property OnStartDock;
  69.     property OnStartDrag;
  70.     property OnUnDock;
  71.   end;
  72.  
  73.   TTextLayout = (tlTop, tlCenter, tlBottom);
  74.  
  75.   TCustomLabel = class(TGraphicControl)
  76.   protected
  77.     procedure AdjustBounds; dynamic;
  78.     procedure DoDrawText(var Rect: TRect; Flags: Longint); dynamic;
  79.     function GetLabelText: string; virtual;
  80.     procedure Loaded; override;
  81.     procedure Notification(AComponent: TComponent;
  82.       Operation: TOperation); override;
  83.     procedure Paint; override;
  84.     procedure SetAutoSize(Value: Boolean); virtual;
  85.     property Alignment: TAlignment default taLeftJustify;
  86.     property AutoSize: Boolean default True;
  87.     property FocusControl: TWinControl;
  88.     property ShowAccelChar: Boolean default True;
  89.     property Transparent: Boolean default False;
  90.     property Layout: TTextLayout default tlTop;
  91.     property WordWrap: Boolean default False;
  92.   public
  93.     constructor Create(AOwner: TComponent); override;
  94.     property Canvas;
  95.   end;
  96.  
  97.   TLabel = class(TCustomLabel)
  98.   published
  99.     property Align;
  100.     property Alignment;
  101.     property Anchors;
  102.     property AutoSize;
  103.     property BiDiMode;
  104.     property Caption;
  105.     property Color;
  106.     property Constraints;
  107.     property DragCursor;
  108.     property DragKind;
  109.     property DragMode;
  110.     property Enabled;
  111.     property FocusControl;
  112.     property Font;
  113.     property ParentBiDiMode;
  114.     property ParentColor;
  115.     property ParentFont;
  116.     property ParentShowHint;
  117.     property PopupMenu;
  118.     property ShowAccelChar;
  119.     property ShowHint;
  120.     property Transparent;
  121.     property Layout;
  122.     property Visible;
  123.     property WordWrap;
  124.     property OnClick;
  125.     property OnContextPopup;
  126.     property OnDblClick;
  127.     property OnDragDrop;
  128.     property OnDragOver;
  129.     property OnEndDock;
  130.     property OnEndDrag;
  131.     property OnMouseDown;
  132.     property OnMouseMove;
  133.     property OnMouseUp;
  134.     property OnStartDock;
  135.     property OnStartDrag;
  136.   end;
  137.  
  138.   TEditCharCase = (ecNormal, ecUpperCase, ecLowerCase);
  139.  
  140.   TCustomEdit = class(TWinControl)
  141.   protected
  142.     procedure Change; dynamic;
  143.     procedure CreateParams(var Params: TCreateParams); override;
  144.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  145.     procedure CreateWnd; override;
  146.     procedure DestroyWnd; override;
  147.     procedure DoSetMaxLength(Value: Integer); virtual;
  148.     function GetSelLength: Integer; virtual;
  149.     function GetSelStart: Integer; virtual;
  150.     function GetSelText: string; virtual;
  151.     procedure SetSelLength(Value: Integer); virtual;
  152.     procedure SetSelStart(Value: Integer); virtual;
  153.     property AutoSelect: Boolean default True;
  154.     property AutoSize: Boolean default True;
  155.     property BorderStyle: TBorderStyle default bsSingle;
  156.     property CharCase: TEditCharCase default ecNormal;
  157.     property HideSelection: Boolean default True;
  158.     property MaxLength: Integer default 0;
  159.     property OEMConvert: Boolean default False;
  160.     property PasswordChar: Char default #0;
  161.     property ParentColor default False;
  162.     property ReadOnly: Boolean default False;
  163.     property OnChange: TNotifyEvent;
  164.   public
  165.     constructor Create(AOwner: TComponent); override;
  166.     procedure Clear; virtual;
  167.     procedure ClearSelection;
  168.     procedure CopyToClipboard;
  169.     procedure CutToClipboard;
  170.     procedure DefaultHandler(var Message); override;
  171.     procedure PasteFromClipboard;
  172.     procedure Undo;
  173.     procedure ClearUndo;
  174.     function GetSelTextBuf(Buffer: PChar; BufSize: Integer): Integer; virtual;
  175.     procedure SelectAll;
  176.     procedure SetSelTextBuf(Buffer: PChar);
  177.     property CanUndo: Boolean;
  178.     property Modified: Boolean;
  179.     property SelLength: Integer;
  180.     property SelStart: Integer;
  181.     property SelText: string;
  182.     property Text;
  183.   published
  184.     property TabStop default True;
  185.   end;
  186.  
  187.   TEdit = class(TCustomEdit)
  188.   published
  189.     property Anchors;
  190.     property AutoSelect;
  191.     property AutoSize;
  192.     property BiDiMode;
  193.     property BorderStyle;
  194.     property CharCase;
  195.     property Color;
  196.     property Constraints;
  197.     property Ctl3D;
  198.     property DragCursor;
  199.     property DragKind;
  200.     property DragMode;
  201.     property Enabled;
  202.     property Font;
  203.     property HideSelection;
  204.     property ImeMode;
  205.     property ImeName;
  206.     property MaxLength;
  207.     property OEMConvert;
  208.     property ParentBiDiMode;
  209.     property ParentColor;
  210.     property ParentCtl3D;
  211.     property ParentFont;
  212.     property ParentShowHint;
  213.     property PasswordChar;
  214.     property PopupMenu;
  215.     property ReadOnly;
  216.     property ShowHint;
  217.     property TabOrder;
  218.     property TabStop;
  219.     property Text;
  220.     property Visible;
  221.     property OnChange;
  222.     property OnClick;
  223.     property OnContextPopup;
  224.     property OnDblClick;
  225.     property OnDragDrop;
  226.     property OnDragOver;
  227.     property OnEndDock;
  228.     property OnEndDrag;
  229.     property OnEnter;
  230.     property OnExit;
  231.     property OnKeyDown;
  232.     property OnKeyPress;
  233.     property OnKeyUp;
  234.     property OnMouseDown;
  235.     property OnMouseMove;
  236.     property OnMouseUp;
  237.     property OnStartDock;
  238.     property OnStartDrag;
  239.   end;
  240.  
  241.   TScrollStyle = (ssNone, ssHorizontal, ssVertical, ssBoth);
  242.  
  243.   TCustomMemo = class(TCustomEdit)
  244.   protected
  245.     function GetCaretPos: TPoint; virtual;
  246.     procedure CreateParams(var Params: TCreateParams); override;
  247.     procedure CreateWindowHandle(const Params: TCreateParams); override;
  248.     procedure KeyPress(var Key: Char); override;
  249.     procedure Loaded; override;
  250.     procedure SetAlignment(Value: TAlignment);
  251.     procedure SetLines(Value: TStrings);
  252.     procedure SetScrollBars(Value: TScrollStyle);
  253.     procedure SetWordWrap(Value: Boolean);
  254.     property Alignment: TAlignment default taLeftJustify;
  255.     property ScrollBars: TScrollStyle default ssNone;
  256.     property WantReturns: Boolean default True;
  257.     property WantTabs: Boolean default False;
  258.     property WordWrap: Boolean default True;
  259.   public
  260.     constructor Create(AOwner: TComponent); override;
  261.     destructor Destroy; override;
  262.     function GetControlsAlignment: TAlignment; override;
  263.     property CaretPos: TPoint;
  264.     property Lines: TStrings;
  265.   end;
  266.  
  267.   TMemo = class(TCustomMemo)
  268.   published
  269.     property Align;
  270.     property Alignment;
  271.     property Anchors;
  272.     property BiDiMode;
  273.     property BorderStyle;
  274.     property Color;
  275.     property Constraints;
  276.     property Ctl3D;
  277.     property DragCursor;
  278.     property DragKind;
  279.     property DragMode;
  280.     property Enabled;
  281.     property Font;
  282.     property HideSelection;
  283.     property ImeMode;
  284.     property ImeName;
  285.     property Lines;
  286.     property MaxLength;
  287.     property OEMConvert;
  288.     property ParentBiDiMode;
  289.     property ParentColor;
  290.     property ParentCtl3D;
  291.     property ParentFont;
  292.     property ParentShowHint;
  293.     property PopupMenu;
  294.     property ReadOnly;
  295.     property ScrollBars;
  296.     property ShowHint;
  297.     property TabOrder;
  298.     property TabStop;
  299.     property Visible;
  300.     property WantReturns;
  301.     property WantTabs;
  302.     property WordWrap;
  303.     property OnChange;
  304.     property OnClick;
  305.     property OnContextPopup;
  306.     property OnDblClick;
  307.     property OnDragDrop;
  308.     property OnDragOver;
  309.     property OnEndDock;
  310.     property OnEndDrag;
  311.     property OnEnter;
  312.     property OnExit;
  313.     property OnKeyDown;
  314.     property OnKeyPress;
  315.     property OnKeyUp;
  316.     property OnMouseDown;
  317.     property OnMouseMove;
  318.     property OnMouseUp;
  319.     property OnStartDock;
  320.     property OnStartDrag;
  321.   end;
  322.  
  323.   TComboBoxStyle = (csDropDown, csSimple, csDropDownList, csOwnerDrawFixed,
  324.     csOwnerDrawVariable);
  325.   TOwnerDrawState = Windows.TOwnerDrawState;
  326.   {$NODEFINE TOwnerDrawState}
  327.  
  328.   TDrawItemEvent = procedure(Control: TWinControl; Index: Integer;
  329.     Rect: TRect; State: TOwnerDrawState) of object;
  330.  
  331.   TMeasureItemEvent = procedure(Control: TWinControl; Index: Integer;
  332.     var Height: Integer) of object;
  333.  
  334.   TCustomComboBox = class(TWinControl)
  335.   protected
  336.     procedure ComboWndProc(var Message: TMessage; ComboWnd: HWnd;
  337.       ComboProc: Pointer); virtual;
  338.     procedure WndProc(var Message: TMessage); override;
  339.     procedure CreateParams(var Params: TCreateParams); override;
  340.     procedure CreateWnd; override;
  341.     procedure DestroyWnd; override;
  342.     procedure DrawItem(Index: Integer; Rect: TRect;
  343.       State: TOwnerDrawState); virtual;
  344.     function GetComboControl: HWND; virtual;
  345.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  346.     procedure Change; dynamic;
  347.     procedure DropDown; dynamic;
  348.     procedure SetStyle(Value: TComboBoxStyle); virtual;
  349.     property DropDownCount: Integer default 8;
  350.     property EditHandle: HWnd;
  351.     property ItemHeight: Integer;
  352.     property ListHandle: HWnd;
  353.     property MaxLength: Integer default 0;
  354.     property ParentColor default False;
  355.     property Sorted: Boolean default False;
  356.     property Style: TComboBoxStyle default csDropDown;
  357.     property OnChange: TNotifyEvent;
  358.     property OnDropDown: TNotifyEvent;
  359.     property OnDrawItem: TDrawItemEvent;
  360.     property OnMeasureItem: TMeasureItemEvent;
  361.   public
  362.     constructor Create(AOwner: TComponent); override;
  363.     destructor Destroy; override;
  364.     procedure Clear;
  365.     function Focused: Boolean; override;
  366.     procedure SelectAll;
  367.     property CharCase: TEditCharCase default ecNormal;
  368.     property Canvas: TCanvas;
  369.     property DroppedDown: Boolean;
  370.     property Items: TStrings;
  371.     property ItemIndex: Integer;
  372.     property SelLength: Integer;
  373.     property SelStart: Integer;
  374.     property SelText: string;
  375.   published
  376.     property TabStop default True;
  377.   end;
  378.  
  379.   TComboBox = class(TCustomComboBox)
  380.   published
  381.     property Style; {Must be published before Items}
  382.     property Anchors;
  383.     property BiDiMode;
  384.     property Color;
  385.     property Constraints;
  386.     property Ctl3D;
  387.     property DragCursor;
  388.     property DragKind;
  389.     property DragMode;
  390.     property DropDownCount;
  391.     property Enabled;
  392.     property Font;
  393.     property ImeMode;
  394.     property ImeName;
  395.     property ItemHeight;
  396.     property MaxLength;
  397.     property ParentBiDiMode;
  398.     property ParentColor;
  399.     property ParentCtl3D;
  400.     property ParentFont;
  401.     property ParentShowHint;
  402.     property PopupMenu;
  403.     property ShowHint;
  404.     property Sorted;
  405.     property TabOrder;
  406.     property TabStop;
  407.     property Text;
  408.     property Visible;
  409.     property OnChange;
  410.     property OnClick;
  411.     property OnContextPopup;
  412.     property OnDblClick;
  413.     property OnDragDrop;
  414.     property OnDragOver;
  415.     property OnDrawItem;
  416.     property OnDropDown;
  417.     property OnEndDock;
  418.     property OnEndDrag;
  419.     property OnEnter;
  420.     property OnExit;
  421.     property OnKeyDown;
  422.     property OnKeyPress;
  423.     property OnKeyUp;
  424.     property OnMeasureItem;
  425.     property OnStartDock;
  426.     property OnStartDrag;
  427.     property Items; { Must be published after OnMeasureItem }
  428.   end;
  429.  
  430. { TButtonControl }
  431.  
  432.   TButtonControl = class;
  433.  
  434.   TButtonActionLink = class(TWinControlActionLink)
  435.   protected
  436.     FClient: TButtonControl;
  437.     procedure AssignClient(AClient: TObject); override;
  438.     function IsCheckedLinked: Boolean; override;
  439.     procedure SetChecked(Value: Boolean); override;
  440.   end;
  441.  
  442.   TButtonActionLinkClass = class of TButtonActionLink;
  443.  
  444.   TButtonControl = class(TWinControl)
  445.   protected
  446.     procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
  447.     function GetActionLinkClass: TControlActionLinkClass; override;
  448.     function GetChecked: Boolean; virtual;
  449.     procedure SetChecked(Value: Boolean); virtual;
  450.     procedure WndProc(var Message: TMessage); override;
  451.     property Checked: Boolean default False;
  452.     property ClicksDisabled: Boolean;
  453.   public
  454.     constructor Create(AOwner: TComponent); override;
  455.   end;
  456.  
  457.   TButton = class(TButtonControl)
  458.   protected
  459.     procedure CreateParams(var Params: TCreateParams); override;
  460.     procedure CreateWnd; override;
  461.     procedure SetButtonStyle(ADefault: Boolean); virtual;
  462.   public
  463.     constructor Create(AOwner: TComponent); override;
  464.     procedure Click; override;
  465.     function UseRightToLeftAlignment: Boolean; override;
  466.   published
  467.     property Action;
  468.     property Anchors;
  469.     property BiDiMode;
  470.     property Cancel: Boolean default False;
  471.     property Caption;
  472.     property Constraints;
  473.     property Default: Boolean default False;
  474.     property DragCursor;
  475.     property DragKind;
  476.     property DragMode;
  477.     property Enabled;
  478.     property Font;
  479.     property ModalResult: TModalResult default 0;
  480.     property ParentBiDiMode;
  481.     property ParentFont;
  482.     property ParentShowHint;
  483.     property PopupMenu;
  484.     property ShowHint;
  485.     property TabOrder;
  486.     property TabStop default True;
  487.     property Visible;
  488.     property OnClick;
  489.     property OnContextPopup;
  490.     property OnDragDrop;
  491.     property OnDragOver;
  492.     property OnEndDock;
  493.     property OnEndDrag;
  494.     property OnEnter;
  495.     property OnExit;
  496.     property OnKeyDown;
  497.     property OnKeyPress;
  498.     property OnKeyUp;
  499.     property OnMouseDown;
  500.     property OnMouseMove;
  501.     property OnMouseUp;
  502.     property OnStartDock;
  503.     property OnStartDrag;
  504.   end;
  505.  
  506.   TCheckBoxState = (cbUnchecked, cbChecked, cbGrayed);
  507.  
  508.   TCustomCheckBox = class(TButtonControl)
  509.   protected
  510.     procedure Toggle; virtual;
  511.     procedure Click; override;
  512.     procedure CreateParams(var Params: TCreateParams); override;
  513.     procedure CreateWnd; override;
  514.     function GetChecked: Boolean; override;
  515.     procedure SetChecked(Value: Boolean); override;
  516.     property Alignment: TLeftRight default taRightJustify;
  517.     property AllowGrayed: Boolean default False;
  518.     property State: TCheckBoxState default cbUnchecked;
  519.   public
  520.     constructor Create(AOwner: TComponent); override;
  521.     function GetControlsAlignment: TAlignment; override;
  522.   published
  523.     property TabStop default True;
  524.   end;
  525.  
  526.   TCheckBox = class(TCustomCheckBox)
  527.   published
  528.     property Action;
  529.     property Alignment;
  530.     property AllowGrayed;
  531.     property Anchors;
  532.     property BiDiMode;
  533.     property Caption;
  534.     property Checked;
  535.     property Color;
  536.     property Constraints;
  537.     property Ctl3D;
  538.     property DragCursor;
  539.     property DragKind;
  540.     property DragMode;
  541.     property Enabled;
  542.     property Font;
  543.     property ParentBiDiMode;
  544.     property ParentColor;
  545.     property ParentCtl3D;
  546.     property ParentFont;
  547.     property ParentShowHint;
  548.     property PopupMenu;
  549.     property ShowHint;
  550.     property State;
  551.     property TabOrder;
  552.     property TabStop;
  553.     property Visible;
  554.     property OnClick;
  555.     property OnContextPopup;
  556.     property OnDragDrop;
  557.     property OnDragOver;
  558.     property OnEndDock;
  559.     property OnEndDrag;
  560.     property OnEnter;
  561.     property OnExit;
  562.     property OnKeyDown;
  563.     property OnKeyPress;
  564.     property OnKeyUp;
  565.     property OnMouseDown;
  566.     property OnMouseMove;
  567.     property OnMouseUp;
  568.     property OnStartDock;
  569.     property OnStartDrag;
  570.   end;
  571.  
  572.   TRadioButton = class(TButtonControl)
  573.   protected
  574.     function GetChecked: Boolean; override;
  575.     procedure SetChecked(Value: Boolean); override;
  576.     procedure CreateParams(var Params: TCreateParams); override;
  577.     procedure CreateWnd; override;
  578.   public
  579.     constructor Create(AOwner: TComponent); override;
  580.     function GetControlsAlignment: TAlignment; override;
  581.   published
  582.     property Action;
  583.     property Alignment: TLeftRight default taRightJustify;
  584.     property Anchors;
  585.     property BiDiMode;
  586.     property Caption;
  587.     property Checked;
  588.     property Color;
  589.     property Constraints;
  590.     property Ctl3D;
  591.     property DragCursor;
  592.     property DragKind;
  593.     property DragMode;
  594.     property Enabled;
  595.     property Font;
  596.     property ParentBiDiMode;
  597.     property ParentColor;
  598.     property ParentCtl3D;
  599.     property ParentFont;
  600.     property ParentShowHint;
  601.     property PopupMenu;
  602.     property ShowHint;
  603.     property TabOrder;
  604.     property TabStop;
  605.     property Visible;
  606.     property OnClick;
  607.     property OnContextPopup;
  608.     property OnDblClick;
  609.     property OnDragDrop;
  610.     property OnDragOver;
  611.     property OnEndDock;
  612.     property OnEndDrag;
  613.     property OnEnter;
  614.     property OnExit;
  615.     property OnKeyDown;
  616.     property OnKeyPress;
  617.     property OnKeyUp;
  618.     property OnMouseDown;
  619.     property OnMouseMove;
  620.     property OnMouseUp;
  621.     property OnStartDock;
  622.     property OnStartDrag;
  623.   end;
  624.  
  625.   TListBoxStyle = (lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable);
  626.  
  627.   TCustomListBox = class(TWinControl)
  628.   protected
  629.     FMoving: Boolean;
  630.     procedure CreateParams(var Params: TCreateParams); override;
  631.     procedure CreateWnd; override;
  632.     procedure DestroyWnd; override;
  633.     procedure WndProc(var Message: TMessage); override;
  634.     procedure DragCanceled; override;
  635.     procedure DrawItem(Index: Integer; Rect: TRect;
  636.       State: TOwnerDrawState); virtual;
  637.     procedure MeasureItem(Index: Integer; var Height: Integer); virtual;
  638.     function InternalGetItemData(Index: Integer): Longint; dynamic;
  639.     procedure InternalSetItemData(Index: Integer; AData: Longint); dynamic;
  640.     function GetItemData(Index: Integer): LongInt; dynamic;
  641.     procedure SetItemData(Index: Integer; AData: LongInt); dynamic;
  642.     procedure ResetContent; dynamic;
  643.     procedure DeleteString(Index: Integer); dynamic;
  644.     property BorderStyle: TBorderStyle default bsSingle;
  645.     property Columns: Integer default 0;
  646.     property ExtendedSelect: Boolean default True;
  647.     property IntegralHeight: Boolean default False;
  648.     property ItemHeight: Integer;
  649.     property MultiSelect: Boolean default False;
  650.     property ParentColor default False;
  651.     property Sorted: Boolean default False;
  652.     property Style: TListBoxStyle default lbStandard;
  653.     property TabWidth: Integer default 0;
  654.     property OnDrawItem: TDrawItemEvent;
  655.     property OnMeasureItem: TMeasureItemEvent;
  656.   public
  657.     constructor Create(AOwner: TComponent); override;
  658.     destructor Destroy; override;
  659.     procedure Clear;
  660.     function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer;
  661.     function ItemRect(Index: Integer): TRect;
  662.     property Canvas: TCanvas;
  663.     property Items: TStrings;
  664.     property ItemIndex: Integer;
  665.     property SelCount: Integer;
  666.     property Selected[Index: Integer]: Boolean;
  667.     property TopIndex: Integer;
  668.   published
  669.     property TabStop default True;
  670.   end;
  671.  
  672.   TListBox = class(TCustomListBox)
  673.   published
  674.     property Align;
  675.     property Anchors;
  676.     property BiDiMode;
  677.     property BorderStyle;
  678.     property Color;
  679.     property Columns;
  680.     property Constraints;
  681.     property Ctl3D;
  682.     property DragCursor;
  683.     property DragKind;
  684.     property DragMode;
  685.     property Enabled;
  686.     property ExtendedSelect;
  687.     property Font;
  688.     property ImeMode;
  689.     property ImeName;
  690.     property IntegralHeight;
  691.     property ItemHeight;
  692.     property Items;
  693.     property MultiSelect;
  694.     property ParentBiDiMode;
  695.     property ParentColor;
  696.     property ParentCtl3D;
  697.     property ParentFont;
  698.     property ParentShowHint;
  699.     property PopupMenu;
  700.     property ShowHint;
  701.     property Sorted;
  702.     property Style;
  703.     property TabOrder;
  704.     property TabStop;
  705.     property TabWidth;
  706.     property Visible;
  707.     property OnClick;
  708.     property OnContextPopup;
  709.     property OnDblClick;
  710.     property OnDragDrop;
  711.     property OnDragOver;
  712.     property OnDrawItem;
  713.     property OnEndDock;
  714.     property OnEndDrag;
  715.     property OnEnter;
  716.     property OnExit;
  717.     property OnKeyDown;
  718.     property OnKeyPress;
  719.     property OnKeyUp;
  720.     property OnMeasureItem;
  721.     property OnMouseDown;
  722.     property OnMouseMove;
  723.     property OnMouseUp;
  724.     property OnStartDock;
  725.     property OnStartDrag;
  726.   end;
  727.  
  728.   TScrollCode = (scLineUp, scLineDown, scPageUp, scPageDown, scPosition,
  729.     scTrack, scTop, scBottom, scEndScroll);
  730.  
  731.   TScrollEvent = procedure(Sender: TObject; ScrollCode: TScrollCode;
  732.     var ScrollPos: Integer) of object;
  733.  
  734.   TScrollBar = class(TWinControl)
  735.   protected
  736.     procedure CreateParams(var Params: TCreateParams); override;
  737.     procedure CreateWnd; override;
  738.     procedure Change; dynamic;
  739.     procedure Scroll(ScrollCode: TScrollCode; var ScrollPos: Integer); dynamic;
  740.   public
  741.     constructor Create(AOwner: TComponent); override;
  742.     procedure SetParams(APosition, AMin, AMax: Integer);
  743.   published
  744.     property Align;
  745.     property Anchors;
  746.     property BiDiMode;
  747.     property Constraints;
  748.     property Ctl3D;
  749.     property DragCursor;
  750.     property DragKind;
  751.     property DragMode;
  752.     property Enabled;
  753.     property Kind: TScrollBarKind default sbHorizontal;
  754.     property LargeChange: TScrollBarInc default 1;
  755.     property Max: Integer default 100;
  756.     property Min: Integer default 0;
  757.     property PageSize: Integer;
  758.     property ParentBiDiMode;
  759.     property ParentCtl3D;
  760.     property ParentShowHint;
  761.     property PopupMenu;
  762.     property Position: Integer default 0;
  763.     property ShowHint;
  764.     property SmallChange: TScrollBarInc default 1;
  765.     property TabOrder;
  766.     property TabStop default True;
  767.     property Visible;
  768.     property OnContextPopup;
  769.     property OnChange: TNotifyEvent;
  770.     property OnDragDrop;
  771.     property OnDragOver;
  772.     property OnEndDock;
  773.     property OnEndDrag;
  774.     property OnEnter;
  775.     property OnExit;
  776.     property OnKeyDown;
  777.     property OnKeyPress;
  778.     property OnKeyUp;
  779.     property OnScroll: TScrollEvent;
  780.     property OnStartDock;
  781.     property OnStartDrag;
  782.   end;
  783.  
  784.   TStaticBorderStyle = (sbsNone, sbsSingle, sbsSunken);
  785.  
  786.   TCustomStaticText = class(TWinControl)
  787.   protected
  788.     procedure CreateParams(var Params: TCreateParams); override;
  789.     procedure Loaded; override;
  790.     procedure Notification(AComponent: TComponent; Operation: TOperation); override;
  791.     property Alignment: TAlignment default taLeftJustify;
  792.     property AutoSize: Boolean default True;
  793.     property BorderStyle: TStaticBorderStyle default sbsNone;
  794.     property FocusControl: TWinControl;
  795.     property ShowAccelChar: Boolean default True;
  796.   public
  797.     constructor Create(AOwner: TComponent); override;
  798.   end;
  799.  
  800.   TStaticText = class(TCustomStaticText)
  801.   published
  802.     property Align;
  803.     property Alignment;
  804.     property Anchors;
  805.     property AutoSize;
  806.     property BiDiMode;
  807.     property BorderStyle;
  808.     property Caption;
  809.     property Color;
  810.     property Constraints;
  811.     property DragCursor;
  812.     property DragKind;
  813.     property DragMode;
  814.     property Enabled;
  815.     property FocusControl;
  816.     property Font;
  817.     property ParentBiDiMode;
  818.     property ParentColor;
  819.     property ParentFont;
  820.     property ParentShowHint;
  821.     property PopupMenu;
  822.     property ShowAccelChar;
  823.     property ShowHint;
  824.     property TabOrder;
  825.     property TabStop;
  826.     property Visible;
  827.     property OnClick;
  828.     property OnContextPopup;
  829.     property OnDblClick;
  830.     property OnDragDrop;
  831.     property OnDragOver;
  832.     property OnEndDock;
  833.     property OnEndDrag;
  834.     property OnMouseDown;
  835.     property OnMouseMove;
  836.     property OnMouseUp;
  837.     property OnStartDock;
  838.     property OnStartDrag;
  839.   end;
  840.  
  841. implementation
  842.