Идёт загрузка страницы...

htp://aptem.net.ru





Добавление иконки в меню

Как добавить иконку в меню? Можно так:


    var
Bmp1 : TPicture;

...

Bmp1 := TPicture.Create;
Bmp1.LoadFromFile('c:\where\b1.BMP');
SetMenuItemBitmaps(     MenuItemTest.Handle,
0,
MF_BYPOSITION,
Bmp1.Bitmap.Handle,
Bmp1.Bitmap.Handle);
...

Создаем изображение.

Загружаем какое-либо изображение формата .BMP.

Используем вызов API SetMenuItemBitmaps для подключения изображения к меню со следующими параметрами:

  1. MenuItemTest - имя для горизонтального (верхнего) пункта меню
  2. 0,1 ... - пункты меню, которым необходимо добавить иконку (первый пункт имеет индекс 0).
Первый дескриптор изображения ссылается на первую иконку, выводимую когда пункт меню неотмечен (невыбран). Второй - если пункт меню отмечен (checked). Возможно использование одного изображения (как в нашем случае).

Весь код необходимо разместить в обработчике события, возникающего при создании формы.

Результат: Это работает, но в качестве иконки выводится только правая верхняя часть изображения (которое поместилось). Известите меня, если вам удалось изменить высоту (или ширину) пункта меню соразмерно выводимому изображению. [000175]