Most powerful skin-engine for Delphi and C++ Builder components!
Tip of the day
Changing of selection color in the run-time.
Developer can change colors in any section of loaded skin at the real-time.
We should search an index of section, used for drawing of selected area ('SELECTION') and change properties of this section:
var SectionIndex: integer; begin // Search index of section in the current loaded skin SectionIndex := sSkinManager1.GetSkinIndex('SELECTION'); if SectionIndex >= 0 then begin State := 0; // Normal state sSkinManager1.gd[SectionIndex].Props[State].Color := clRed; // Normal selection color State := 1; // Active state sSkinManager1.gd[SectionIndex].Props[State].Color := clMaroon; // Focused selection color end; end;
Using same way may be changed font color and other properties.
List of standard names of skin sections may be found in the sSkinProps.pas file.
Also, selection color must be changed in the skin common palette:
Palette[pcSelectionBG] := clRed; // Normal selection color Palette[pcSelectionBG_Focused] := clMaroon; // Focused selection color
Selected area is drawn by OS in some components, using current OS colors. It's possible to change system colors in application, use the sSkinManager1.Options.ChangeSysColor property for that. Sys colors will be received from the current skin in this case.
Latest site updates:
Update: AlphaControls v12.21 Stable released06.12.2017
New skin: Topaz 2017
New tutorial: New in the AlphaControls 2017 (version 12)
This component is a collection of buttons which may be placed in any place of form, including borders and title area. Buttons are placed over all other controls. They may be painted with using of current skin sections, standard Windows theme or custom images.
Download the executable demo with sources
New tutorial: New in the AlphaControls 2016 (version 11)
Support of forms scaling (automatic and manual).
Click image for enlarge.
In the TsSkinManager component the Options.ScaleMode property has been added with sm100, sm125, sm150, smAuto and smOldMode values. Default smOldMode value added for a backward compatibility. Application will have ...
New skin: Notes Plastic
New tutorial: New in the AlphaControls 2015 (version 10)
Removed all code which was marked in v9 as "deprecated".
Improved animation in all "glowing" effects.
Deprecated TsHintManager component has been removed. It's recommended to use the TsAlphaHints component instead. ...
New tutorial: Using of skins, protected by keys
The possibility of AlphaSkins encryption has been added in the AlphaControls v10. Such skin can't be unpacked and message about unregistered skin is shown when it loaded in the application. The message about unregistered skin will not be shown if special secure key contained in the ...
New skin: Notes Leather
Update: Released AlphaControls 2014 (version 9 Beta)28.02.2014
New tutorial: Non-standard possibilities of components in the package
Properties common for all components• BoundLabel
This property is available in all edit controls (TsComboBox, TsMaskEdit, TsSpinEdit and others). The property allows to add a label which will be near the edit control always and moved automatically together with this control. Options which are available in this property:
The property is available in buttons from the package and in the TsCheckBox, TsRadioButton and TsTrackBar. Property defines events when will be used animation of component. Each button have own animation options. Animated control changing may be occured in four mouse events(mouse entering and leaving, left button down and up). If aeGlobalDef is enabled then will be used global animation options from TsSkinManager.AnimEffects.Buttons.Event property. In this case we can control behaviour of animation effects for all buttons from one point.
This property is available in buttons, edit controls and many other components. Defines looking of the disabled control. Available options:
This property is available in most visible controls and allows to change a skin options in separate control. Available options:
Some components (buttons, for sample) have HUEOffset and Saturation options in the SkinData property. These options allows to change color tones in separate control.
The SkinData.Invalidate procedure completely repaint skinned control (standard Invalidate procedure can work not always because sometimes a control image is in the skin cache and this cache image should be updated too).
SkinData.BeginUpdate and SkinData.EndUpdate procedures forbids and allows a control repainting accordingly.
New tutorial: Additional features in menus
New tutorial: Adding skins to existing project
Two main ways exists for adding skins:
1. Using of standard components
This way is more easier in most cases and allows to see a result after few minutes of work. Therefore, we first consider it. For a sample will be used an existing demo-program from Demos directory in BDS2005. Sources of this demo may be downloaded there.
After first compiling of this project we will receive a window where form and all controls have standard looking.
All we need now is ...
New tutorial: Skins creation. General information
Only unpacked AlphaSkins may be loaded to the skin editor. For unpacking and loading of packed skin (*.asz) use the "Unpack and open" button in the ASkinEditor.exe. All skins in unpacked state contains two main files :
So, for a new skin creation needed ...
New tutorial: TsAlphaHints component
Controls a drawing of tooltips in the application with or without skins. To get this component working, it is enough to place him to the main form of application. He has one basic style already, this style is configured and used as default. That's all! Hints will be drawn automatically now while the Active property is True.
A variety of styles may be made by changing of component settings. For managing styles there is a special design-time editor of the Templates property.
Unlike TsHintManager component, the TsAlphaHints manager can draw hints with any shape. TsHintManager is obsolete and remains in the package for compatibility. Component TsAlphaHints more promising and preferable to use.
The component can apply user defined styles, and can use styles defined in the current skin, if it is active. The UseSkinData property should be enabled for using of styles from skin. Each skin has the 'HINT' section, where defined a data which used for drawing.
ShowHint and HideHint procedures may ...
New tutorial: TsAlphaImageList and TsVirtualImageList
This component is an analogue of standard TImageList component, but there are some significant differences:
New tutorial: TsSkinProvider component
This component manages skinning of each separate form where he is placed. Despite the fact that it is created automatically (if TsSkinManager.SkinningRules.srStdForms is True), it is recommended to put this component on the form in design-time. This contributes to better controlling of the form, improves an animation of forms showing and many other operations. Also, this component contains many additional settings that help to influence the best skinning of the form on ...
New tutorial: TsSkinManager component
Component is designed for centralized management of program skinning process. For work of this component is enough to define a skin and set the Active property to True.
There are two ways of skins deploying with the application ...
New tutorial: Standard and third-party components
To allow a support of 3rd-party or standard control within your project, the control must be declared in the SkinManager.ThirdParty property. Use a special design-time editor for a handy adding of required controls.
List of currently supported components (increases ...
New tutorial: Important stuff
Here are a several simple tips, the implementation of which can significantly improve the behavior of the skinned application:
1. Use the TsSkinProvider in all forms, where possible. It manages the drawing of form-owner. If the TsSkinProvider component is not placed on form in design-time, then it will be ...
New tutorial: First application with AlphaSkins
How to use AlphaSkins properly? Consider the simplest example :
1. Create a new application
2. Put the TsSkinManager component on the form, let's call him as sSkinManager1
3. Add at least one skin to ...
New tutorial: Installing questions and issuesBelow we try describe the main questions that may arise during installation of components and recommendations for addressing them.
New tutorial: Installing the Alphacontrols package
If you have a previous version of the package already installed, you should remove it using the following method.
Installing, using and licensing the demo programs © Serge Goncharov, 2004-2017