I would like to know how it is possible to have different skins on the same application working, that is, at this moment, I have two forms, and each form can have different skins through the skinmanagers, but TButton controls are always skinned by the skin placed on the main form of the application.
How can I do that?
My goal is to provide different forms with different skins, all in the same application.
You can use TsButton component instead TButton. Just set property sButton.SkinData.SkinManager to TsSkinManager which contain and use needed skin.
Skinning for standard VCL components (like TButton, TBitBtn etc.) is supported, but it's not native skinning (for skinning this controls default TsSkinManager used (in your case this placed on main form), so you can't make VCL Button1 with one skin and Button2 with different. For Button1 and Button2 in same time will be used skin from default TsSkinManager component).