Skip to main content

TcxEditRepositorySpinItem Class

Declaration

TcxEditRepositorySpinItem = class(
    TcxEditRepositoryItem
)

Remarks

A spin editor allows users to enter a numeric value directly or adjust it with spin buttons. Up and Down spin buttons increment and decrement the edit value by a fixed amount.

VCL Editors Library: A Spin Editor Example

The TcxEditRepositorySpinItem class overrides the Properties property that allows you to access and customize spin editor settings.

Edit Repository Items and Standalone Editors

Edit repository items are useful when you need to share the same settings between multiple editors of the same type. To accomplish this goal, you can assign the same edit repository item to RepositoryItem properties of all target editors.

Edit Repository Items and Container Controls

A container control item (such as a toolbar edit item or a column (or any other data item) in a Data Grid, Vertical Grid, or Tree List control) can embed an in-place editor shipped with the ExpressEditors Library. An in-place editor exists (and, therefore, has its own WinAPI handle) only when the target container control item is being edited. Otherwise, the container control item displays a static editor image for resource usage optimization.

VCL Tree List: An In-Place Date Editor

Create a Spin Editor Repository Item at Design Time

To create a spin editor repository item at design time, double-click a TcxEditRepository component to invoke its collection editor.

VCL Editors Library: An Edit Repository Collection Editor

The collection editor dialog allows you to manage repository items. Click the Add… button to invoke a repository item creation dialog.

VCL Editors Library: An Edit Repository Item Creation Dialog

Select the SpinEdit item and click the Ok button to create a spin editor repository item.

Create a Spin Editor Repository Item in Code

The following code example creates a spin editor repository item, customizes editor settings, and assigns the created repository item to two existing unbound spin editors:

uses cxEdit, cxEditRepositoryItems;
// ...
var
  ASpinEditRepositoryItem: TcxEditRepositorySpinItem;
  ARepositoryItem: TcxEditRepositoryItem;
begin
  ARepositoryItem := cxEditRepository1.CreateItem(TcxEditRepositorySpinItem);
  ASpinEditRepositoryItem := ARepositoryItem as TcxEditRepositorySpinItem;
  ASpinEditRepositoryItem.Properties.MinValue := 0; // Sets the minimum edit value
  ASpinEditRepositoryItem.Properties.MaxValue := 1000; // Sets the maximum edit value
  ASpinEditRepositoryItem.Properties.Circular := True; // Loops value changes within the defined range
  // Assigns the created repository item to two existing unbound spin editors
  cxSpinEdit1.RepositoryItem := ASpinEditRepositoryItem;
  cxSpinEdit2.RepositoryItem := ASpinEditRepositoryItem;
end;

Spin Editor Repository Item Deletion

To delete all spin editor repository items in a TcxEditRepository component, call its RemoveItems procedure and pass a reference to the TcxEditRepositorySpinItem class as a parameter.

If you need to delete an individual spin editor repository item, release it directly in code (call the Free procedure in Delphi or use the delete keyword in C++Builder).

Inheritance

See Also