Шаг 52 - Отображение икон

Иконы в Windows могут отображаться по разному. У икон есть несколько параметров:

Размер
Сколько цветов

Параметры икон можно установить при настройке свойств экрана, вот здесь:

52_1.gif (6643 b)

То есть вообще не факт, что пользователь будет использовать именно этот размер, который Вы предполагаете. Значения размера икон хранятся в реестре.

52_2.gif (8555 b)

Это хорошо. А как бы программно узнать ??? Прочитать из реестра. Что будет если пользователь установит другое разрешение, скажем, большее или меньшее, чем Вы предусматривали ??? Может просто быть не очень красиво. Икона все равно будет отображаться. Попробуйте изменить размер иконы в Windows и посмотрите просто как она будет смотреться у вас.

Shell Icon Size = размер
Shell Icon BPP = цветовая глубина.
Вот для примера. 

// TTT.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "windows.h"
#include "iostream.h"

void main()
{
	HKEY hKey;
	unsigned char buffer[255];
	DWORD dwType = REG_SZ;
	DWORD dwLength=sizeof(buffer); 
	RegOpenKey( HKEY_CURRENT_USER, "Control Panel\\desktop\\WindowMetrics",&hKey);
	RegQueryValueEx( hKey, "Shell Icon Size", NULL, &dwType, buffer, &dwLength);
	cout << buffer << endl;
}

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 17.01.2001