5

I have an old app (Delphi 5) which I want to give it some changes.

I have set a manifest for it, but speedbuttons are not following the Windows theme. What should I do?

Rob Kennedy
  • 161,384
  • 21
  • 275
  • 467
Inside Man
  • 4,194
  • 12
  • 59
  • 119
  • 2
    Welcome to Stack Overflow. You've included four unrelated questions. (They're related inasmuch as they're all about TSpeedButton, but that's all.) Please post four *separate* questions so you can get the best answers for each of them. Please use the "edit" like below the question to remove the last three questions, and the post each of them in its own question. You'll get more focused answers for each of them, and you'll also have more opportunity to get reputation points. – Rob Kennedy Jun 08 '11 at 14:35
  • 2
    @Rob, Majid: In the current case I'd try to first solve item 1 and see if 3 and maybe 2 magically disappear before making them into new questions. – Uli Gerhardt Jun 08 '11 at 14:41

3 Answers3

8

Delphi 5 doesn't know anything about Windows visual styles (no big surprise :-)). If you really want to stay with D5, your best bet is probably to use Mike Lischke's Windows XP Theme Manager.

Community
  • 1
  • 1
Uli Gerhardt
  • 13,748
  • 1
  • 45
  • 83
  • I have not Delphi installed on my OS, how to use XM theme manager then? Should I use any Res editor for updating theme? – Inside Man Jun 08 '11 at 15:06
  • How can you hope to change the app without a compiler? XP theme manager is code—you'd need to recompile to use it. – David Heffernan Jun 08 '11 at 15:09
  • @Majid: I haven't used Theme Manager for ages, so I really don't remember too much. AFAICT from the linked web page, you install TM on your development machine, add the path to your project's (or the IDE's) search path and drop a TThemeManager component on your main form. After a recompile everything hopefully works. – Uli Gerhardt Jun 08 '11 at 15:13
  • So this question is closed, Thanks for your great reply, I should install Delphi NOW :)) – Inside Man Jun 08 '11 at 15:14
  • @Majid The question is not closed. @Ulrich You remember right about XPTM. XPTM is one of the great pieces of software IMHO. – David Heffernan Jun 08 '11 at 15:18
  • If it is not closed then please give me a way, really I have not my project, But the good side is that the RCData and Forms are editable in res editors, So any idea about importing theme component by res editor? – Inside Man Jun 08 '11 at 15:26
  • @Majid we have given you two ways. 1) add XP theme manager and re-build in D5. 2) Upgrade to Delphi XE. You can't do it without re-compiling. – David Heffernan Jun 08 '11 at 16:47
  • @Majid: What @David means but is too modest to say (as opposed to me :-)) is: A question is not really "closed" unless an answer is accepted (has a green checkmark next to it). And to "close a question" has a [different meaning in SO](http://stackoverflow.com/faq#close). – Uli Gerhardt Jun 08 '11 at 19:08
  • I hate that @!*# link syntax in comments. :-) – Uli Gerhardt Jun 08 '11 at 19:13
6

Your best bet, in my view, is to upgrade to the latest Delphi which fully supports XP themes out of the box. Trying to get a Delphi 5 app to look native on modern Windows is quite a labour (I have done it myself so I speak from experience) and if you can upgrade it will be the least painful route.

David Heffernan
  • 601,492
  • 42
  • 1,072
  • 1,490
2

Even though this post is not answering directly your question, MAYBE it will help you somehow:

I agree with others that the easy way will be to upgrade to the latest edition of Delphi. However, this is a fast (if you ignore the UNICODE conversion) but not cheap solution. A cheaper solution (and even faster) may be to 'pimp' your application using a Delphi skin package. Your application may look even better than the 'classic' Windows Vista/7 themes.

Gabriel
  • 20,797
  • 27
  • 159
  • 293