Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2011, 15:44   #1
Рубик2
 
Регистрация: 02.08.2011
Сообщений: 3
По умолчанию Динамическое изменение TIcon

Здравствуйте. Нужно рисовать индикатор на TIcon динамически и присваивать его значение TrayIcon.Icon.

Проблема в том, что у TIcon отсутствует Canvas, и рисовать на нем нельзя. Фон для TIcon хранится в TImageList.
Я делаю так: получаю ImageList.GetBitmap, затем на этом TBitmap рисую что нужно, делаю ImageList.Insert и затем ImageList.GetIcon, где и получаю иконку. Но при этом почему-то теряется прозрачность (иконка изначально 32-битная).
У ImageList стоит ColorDepth = cd32Bit.

Вопрос в том, как корректно нарисовать на 32-битной иконке (TIcon), получаемой из ImageList что-нибудь, например, прямоугольник.

Delphi 2010, Win 7
Рубик2 вне форума Ответить с цитированием
Старый 02.08.2011, 16:54   #2
mss
Заблокирован
 
Регистрация: 27.05.2010
Сообщений: 1,099
По умолчанию

Как преобразовать битмап в иконку
mss вне форума Ответить с цитированием
Старый 02.08.2011, 17:21   #3
Рубик2
 
Регистрация: 02.08.2011
Сообщений: 3
По умолчанию

Цитата:
Сообщение от mss Посмотреть сообщение
Спасибо, я умею пользоваться гуглом и делал это перед тем, как задать вопрос.
Рубик2 вне форума Ответить с цитированием
Старый 03.08.2011, 14:15   #4
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

ну пойди другим путем,
Код:
var
  ArrBitmap: array of TBitmap;
при загрузке иконок конвертируй в TBitmap
ZuBy вне форума Ответить с цитированием
Старый 04.08.2011, 13:26   #5
NITROGEN_92
Пользователь
 
Регистрация: 25.08.2009
Сообщений: 12
По умолчанию

Попробуй на 32-х битном битмапе рисовать. Или пользуйся маской, затем через hIcon грузи отдельно цвет и маску. Должна получиться иконка с прозрачностью.
NITROGEN_92 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое изменение даты AvivNoa Microsoft Office Word 34 03.06.2016 21:04
Динамическое изменение текста GaLiof JavaScript, Ajax 3 26.11.2010 09:40
Динамическое изменение столбца в запросе Santosh Microsoft Office Access 4 22.09.2010 01:22
vba: динамическое изменение кода tyrus2 Microsoft Office Word 2 15.09.2010 17:19
динамическое изменение типа переменной L@m@k Помощь студентам 14 12.08.2010 18:09