Как установить размер и прозрачную / прозрачную кнопку CMFCToolBar и значок в MFC?

Я создал некоторые (CMFCToolBar) панели инструментов и добавленные к ним кнопки и значки. Я прочитал на официальном сайте Microsoft, что CMFCToolBar размер кнопки 23x22 и размер значка 16x15 (ссылка: ссылка).

Если я использую 16x15 для иконок, то иконки выглядят размытыми. Это потому, что иконки изначально имеют размер 16x16. Я использовал функцию SetSizes(CSize (23,23), CSize(16,16)) чтобы изменить размер значка, но значки отображаются неправильно:

образ

Есть ли другой способ установить значок и размер кнопки?


Обновить

Я позвонил SetSize Функция до создания панели инструментов, но значок все еще выглядит немного размытым:

Образ

Я хочу знать, есть ли способ установить иконку / кнопку Прозрачный или прояснить, как мы можем установить прозрачную панель инструментов через TBSTYLE_TRANSPARENT в CreateEx функция.

1 ответ

Решение

SetSizes статическая функция, которая влияет на всю библиотеку

Он должен вызываться перед созданием любой панели инструментов или объекта меню. Лучшее место в InitInstance с твоей стороны

Но мой совет: используйте рекомендованные размеры! 16х15 и 23х22....

Прозрачность может быть достигнута с помощью стандартных 32-битных RGB/A растровых изображений. Если у вас есть 16-цветное растровое изображение, вы должны использовать RGB(192 192 192) в качестве стандартного цвета для фона. Он автоматически заменяется на нужный цвет фона.

Здесь тоже ответили.

Другие вопросы по тегам