I am using Windows XP Theme Manager in order to have 6.0 controls look-and-feel in my Delphi 6 application (manifest is provided). I have problem with some Tnt Unicode controls, for example with TTntBitBtn
. As you can see from the image below, all WideString
captions are treated as regular strings (left: TTntButton
, right: TTntBitBtn
):
Is there a way to make Windows XP Theme Manager treat Tnt Unicode components correctly (or vice versa)?
For some reason TTntThemeManager
, which is needed to correctly display themed components, is missing from the last free version of Tnt Unicode controls (2.3.0). The version which contains TTntThemeManager
(2.2.3) is still available on Delphi Inspiration Tnt Unicode Controls page. This is how I merged TTntThemeManager
to the latest version and make all components display correctly.
Here's the procedure:
Download the ZIP file with TntUnicodeControls 2.2.3.
Copy files TntThemeMgr.pas
and TntThemeMgrDB.pas
to the folder where Tnt Unicode controls are installed (usually $(ProgramFiles)\TntWare\Delphi Unicode Controls\Source
).
Copy resource files TntThemeMgr.dcr
and TntThemeMgrDB.dcr
to the folder with other resource files (usually $(ProgramFiles)\TntWare\Delphi Unicode Controls\Design
).
Copy files TntThemeManager6.cfg
, TntThemeManager6.dof
, TntThemeManager6.dpk
and TntThemeManager6.res
to the folder with remaining two packages (usually $(ProgramFiles)\TntWare\Delphi Unicode Controls\Delphi\d6
for Delphi 6).
In the file TntThemeManager6.dpk
correct two paths to resource files: {$R '..\..\Design\TntThemeMgr.dcr'}
and {$R '..\..\Design\TntThemeMgrDB.dcr'}
.
In the same file correct two paths to source files: TntThemeMgr in '..\..\Design\TntThemeMgr.pas'
and TntThemeMgrDB in '..\..\Design\TntThemeMgrDB.pas'
.
Finally, in the same file change the first requirement from ThemeManager6
to ThemeManagerD6
.
Open the TntThemeManager6.dpk
package file from Delphi and compile it.
If you did everything right the two new components - TntThemeManager
and TntThemeManagerDB
will be added to the TntAdditional
palette in Delphi. Add TntThemeManager
to your form and, if you provided the manifest file, you will get the correct result: