Графика и мультимедиа_________________________________331

размер 24 на 24. Перед вами откроется окно заготовки вашего рисунка. Выполняе-
те команду Edit | Paste, которая скопирует изображение из буфера обмена в вашу за-
готовку рисунка. Остается только мышью сдвинуть его так, чтобы изображение
интересующего вас компонента попало в центр рамки рисунка. Затем выполняете
команду File | Save As и сохраняете рисунок в файле. Далее можете использовать его
как пиктограмму в библиотеке компонентов (см. раздел 7.2, рис. 7.1, в котором за-
гружается только что описанная пиктограмма).

Мы рассмотрели создание пиктограммы для включаемого в библиотеку ново-
го шаблона компонента. Пиктограммы новых компонентов делаются точно так же,
но они выполняются не в виде отдельных файлов, а включаются в файлы ресурсов,
о которых пойдет речь ниже.

5.1.2.3 Создание пиктограммы для кнопки

Теперь мы попробуем создать пиктограмму для кнопки. Такие кнопки, как
SpeedButton и BitBtn, могут воспринимать пиктограммы, загружаемые в их свой-
ство Gliph. Одно изображение пиктограммы имеет размер 16х16. Но в одном фай-
ле может содержаться до четырех изображений такого размера. Самое левое соот-
ветствует отжатой кнопке. Второе слева соответствует недоступной кнопке, когда
ее свойство Enabled равно false. Третье слева изображение используется при нажа-
тии пользователя на кнопку при ее включении. Четвертое слева изображение ис-
пользуется в кнопках с фиксацией (в SpeedButton) для изображения кнопки в на-
жатом состоянии.

Давайте сделаем пиктограмму по полной программе — на 4 изображения. Со-
здайте новый файл битовой матрицы (File | New Bitmap File (.bmp)) и в открывшемся
окне (рис. 5.4 б) задаете размер 64х16. Разбейте изображение на 4 квадрата, разде-
ленных белыми рамками в один пиксель (рис. 5.5 а), и закрасьте их в последовате-
льности слева направо красным, серым, желтым и зеленым цветами.

При создании файла пиктограмм для кнопок надо иметь в виду, что левый
нижний пиксель задает цвет «прозрачности», т.е. цвет, который будет заменяться
цветом поверхности кнопки. Поэтому, если вы, например, просто закрасите пер-
вый квадрат, не задав ему рамку, то он не будет виден на кнопке.

Сохраните созданный файл и постройте простое приложение, чтобы посмот-
реть ваши пиктограммы в работе. Перенесите на форму (рис. 5.5 б) три кнопки:

SpeedButton, BitBtn и Button. В свойство Gliph кнопок SpeedButton и BitBtn за-
грузите ваш файл пиктограмм. В свойстве Caption кнопки BitBtn задайте ка-
кую-нибудь надпись, например «BitBtn». При этом вы сможете увидеть, что в свой-
ствах кнопок NumGliphs установится равным 4. Поварьируйте свойствами Margin
и Spacing кнопок, чтобы получить симметричное размещение пиктограмм и надпи-
сей. Для кнопки SpeedButton установите свойств Grouplndex равным 1, а свойство
AllowAHUp в true. В обработчик щелчка кнопки Button вставьте код:

BitBtn2->Enabled = ! BitBtn2->Enabled;

SpeedButton2->Enabled = ! SpeedButton2->Enabled;

Рис. 5.5

Создание
пиктограммы
для кнопки (а) и
ее использование
(6)