16x16 v 32x32 pixel icon (.ico)

Posted on 2006-04-30
Last Modified: 2010-04-05
Hi Expert,

For a Delphi application, I created a 16x16 pixels icon (.ico). One of 32x32 would be reduced to 16x16 automatically and all detail would get lost then. However, when the application runs and while switching between programs (on Windows XP) using ALT+Tab, so that the running programs' icons are shown, the 16x16 one of my application is automatically turned into a 32x32 one, which doesn't look good at all either, especially not between the other ones which are perfectly sharp and 32x32 pixel icons *not* converted from 16x16. How do they do that?

Any ideas?

Thank you!
Ron dW
Question by:Ron_de_Weijze
    LVL 13

    Expert Comment

    mmm... have never noticed that... where did you put the icon?
    on the project options, application?

    how about on the actual Form (icon property), that's probably the one that shows up when "Alt-tabbing"

    Author Comment

    Indeed on the project options, application. Putting it on the Form's icon property doesn't make a difference unfortunately.

    LVL 28

    Expert Comment

    it's pretty simple actualy. the icon you give to your application must contain 2 icons (this is called a multi layer  or multi page icon or something like that). now the first icon must be 16x16 and the second one 32x32 (some even argue on 64x64, but I am not sure if that is supposed to be the 3rd icon or not)
    anyway, when the application is shown in a thumnail or in any place where a small icon is needed, then the first icon is used regardless of it's size. If there is a need for a big icon (like a desktop shortcut) then the second icon is used regardless of size, if there is one)
    most icon editors these days know how ot handle this sort of icon types. I usually made them using visual studio at work ;)

    hope this clears the fog a bit :)

    Author Comment

    Thanks Ciuly, that surely clarifies, but where do I put both icons? In the Project Options - Application Settings, there is only room for *one* "Load Icon...".

    LVL 28

    Accepted Solution

    it seems to me that it didn't clarified it :P
    one icon (one file) can hold several icons (images):
    take your pick for the program to use.
    LVL 33

    Assisted Solution

    hello Ron_de_Weijze , , The windows system will get an Icon from a program's resource icon file, it will pick an icon from that icon file, that best fits the system's  bit-count and pixel size (like 32 bit, 48x48 for windows XP) for the icon display, , , So microsoft recomends that all Icon files have 3 icons sizes in 3 different bit depths, , the 3 sizes are , , 16x16, 32x32 and 48x48, ,  the 3 recomended bit counts are , ,  4-Bit, 8-Bit, and 32-Bit . . . . An Icon file can have many separate single Icons in it, , But a program should have at least a 16x16 and 32x32 4-Bit icons in the resource file. . .So your question - "but where do I put both icons?"  , , you place them in ONE icon file, you should get an Icon editor and build your muti-icons, or you can do it with a delphi program you make to do it, but that is more difficult
    LVL 16

    Expert Comment

    I'd like to recomment Axialis IconWorkShop :)

    Author Comment

    Thank you Ciuly and Slick, I had not heard about multipage icons and icon files. I suppose there is my answer and I will have to deal with it a bit later when I have time. So for now I will split the points.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    How your wiki can always stay up-to-date

    Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
    - Increase transparency
    - Onboard new hires faster
    - Access from mobile/offline

    Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
    Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
    Hi everyone! This is Experts Exchange customer support.  This quick video will show you how to change your primary email address.  If you have any questions, then please Write a Comment below!
    Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…

    761 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    8 Experts available now in Live!

    Get 1:1 Help Now