0

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):

enter image description here

Is there a way to make Windows XP Theme Manager treat Tnt Unicode components correctly (or vice versa)?

adlabac
  • 416
  • 4
  • 12
  • 4
    Are you tried using the TTntThemeManager class defined in the `TntThemeMgr` unit? – RRUZ Dec 04 '14 at 14:56
  • 1
    There is no such unit, at least not in the free version (2.3.0). – adlabac Dec 04 '14 at 16:29
  • 2
    It's available in 2.2.3. I don't know why it would have been removed. Maybe it interfered with Delphi 7, which included theme support natively. – Rob Kennedy Dec 04 '14 at 17:00

1 Answers1

1

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:

  1. Download the ZIP file with TntUnicodeControls 2.2.3.

  2. Copy files TntThemeMgr.pas and TntThemeMgrDB.pas to the folder where Tnt Unicode controls are installed (usually $(ProgramFiles)\TntWare\Delphi Unicode Controls\Source).

  3. Copy resource files TntThemeMgr.dcr and TntThemeMgrDB.dcr to the folder with other resource files (usually $(ProgramFiles)\TntWare\Delphi Unicode Controls\Design).

  4. 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).

  5. In the file TntThemeManager6.dpk correct two paths to resource files: {$R '..\..\Design\TntThemeMgr.dcr'} and {$R '..\..\Design\TntThemeMgrDB.dcr'}.

  6. In the same file correct two paths to source files: TntThemeMgr in '..\..\Design\TntThemeMgr.pas' and TntThemeMgrDB in '..\..\Design\TntThemeMgrDB.pas'.

  7. Finally, in the same file change the first requirement from ThemeManager6 to ThemeManagerD6.

  8. 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:

Correctly displayed TTntbutton and TTntBitBtn

adlabac
  • 416
  • 4
  • 12