Most powerful theming solutions for apps developed in Delphi and C++ Builder
Update: AlphaControls v9.18 Stable released19.11.2014
New: 'Graphite' skin
Author: Serge Goncharov
Size: 30.6 Kb
'Spring Willow' skin
Author: Serge Goncharov
Download: Spring Willow
Size: 49.4 Kb
Nonuniversal personal skins 20.04.2014
New: 'Notes Leather' skin15.04.2014
Author: Serge Goncharov
Download: Notes Leather
Size: 270.0 Kb
Tutorial: Non-standard possibilities of components in the package11.11.2013
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.
Tutorial: Additional features in menus21.07.2013
Tutorial: Adding skins to existing project01.04.2013
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 ...
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 ...
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 ...
Tutorial: TsAlphaImageList and TsVirtualImageList
This component is an analogue of standard TImageList component, but there are some significant differences:
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 ...
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 ...
Tutorial: Standard and third-party components
To allow support of a 3rd-party 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 ...
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 ...
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 ...
Tutorial: Installing questions and issuesBelow we try describe the main questions that may arise during installation of components and recommendations for addressing them.
Tutorial: Installing the Alphacontrols package
If you have a previous version of the package already installed, you should remove it using the following method.
© Serge Goncharov, 2004-2014 (exec time: 0.003 seconds)