Search code examples
delphidelphi-10.2-tokyovcl-styles

How to apply colouring to a Delphi 10.2 Tokyo application without using VCL Styles?


Considering the grief we've been having with VCL styles in Delphi 10.2 Tokyo around its use in dynamic link libraries and how it affects the built-in help viewer, as well as a number of negative comments from the community about VCL styles in general, is there another way that we can colour the application windows as in the examples below:

Example of the application with a blue style applied

Example of a green style applied

enter image description here

This feature has been part of the application since it's inception in 2001 and it vital for a number of our largest clients, as they actually maintain separate accounts for their subsidiaries and use the colours as an indication of which company they are working with.


Solution

  • Here are the third party skinning products I found so far:

    • TMS Skin Factory. This has been discontinued.
    • VCL Styles Utils. This extends VCL Styles and the issues with 10.2 Tokyo remain.
    • VCLSkin. This has not been updated since XE6.
    • Almediadev. Just like with DevExpress, we would need to replace all the standard controls with their specific versions in order to apply their skins.

    I will update my answer as I find more.

    Unfortunately, any answer where we have to replace the components offered by Vcl.StdCtrls or Vcl.ComCtrls with versions specific to the third party package is not going to work. We have 2500 TButtons alone across all the programs in the suite.

    EDIT: In the end, we found an answer, or workaround, to the System Exception problem that had us looking at alternatives to VCL Styles in the first place:

    Using VCL Styles in a DLL causes System Exception in 10.2 Tokyo