![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| h5who |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 23.2.2008 Репутация: нет Всего: нет |
В TImageList - иконки (в формате ico), 32х32. Я их где-то отрисовываю на канве, через TImageList.Draw, но отрисовка получается ужасной - лесенки, неровности. Особенно если фон темный - вообще ужас.
Хороший пример, беру TPanel, указываю любой цвет, а сверху накладываю TImage с той же самой иконкой. И это все выглядит нормально. Как добиться такого же вида при отрисовке на канве? Что я делаю не так? Спасибо. |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
TImageList не поддерживает 32 битные иконки.
Поищи по форуму, тут был код, котрый позволяет исправляет эту проблему. |
|||
|
||||
| Alix |
|
|||
|
L45 ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 4.5.2005 Где: Pskov/Spb Репутация: 8 Всего: 23 |
возможно, тебе сюда
http://forum.vingrad.ru/topic-91526.html Добавлено @ 20:17 хотя я не прав... VICTAR, вот твой код: http://forum.vingrad.ru/index.php?showtopi...t&p=1270128 а нашел ты его, вероятно, отсюда:. Это сообщение отредактировал(а) Alix - 20.3.2008, 20:18 -------------------- Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой High tech. Low live. (с) Gardner Dozois |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
||||
|
||||
| h5who |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 23.2.2008 Репутация: нет Всего: нет |
Спасибо, но не хочу загружать иконки в время работы программы. Я хочу на этапе разработки засунуть в ImageList иконки и потом рабоать с ними. И там кажется нужно хр-манифест подключать, что я делать не хочу.
Что в таком случае посоветуете? |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
PngImageList из PngComponents
они поддерживают png с прозрачностью. |
|||
|
||||
| aktuba |
|
|||
![]() Смышленный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1915 Регистрация: 24.4.2006 Где: Планета Земля Репутация: 7 Всего: 38 |
Создать свой компонент, избавленный от указанных недостатков. Не шутка. -------------------- ![]() |
|||
|
||||
| h5who |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 23.2.2008 Репутация: нет Всего: нет |
Всем спасибо.
Вообщем я сумел добиться того, что мой лист стал поддерживать 32 битные иконки. Стало теперь получше выглядеть конечно, но проблема при темном фоне сохранилась. Если фон темный, то рисуется вокруг иконок толи рамка..., шум одним словом. Рисуется так:
Что я не так делаю? |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
h5who, прикрепи скрин, так легче будет сориентироваться.
|
|||
|
||||
| h5who |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 23.2.2008 Репутация: нет Всего: нет |
Прикрепил графический пример.
Левые иконки - это отрисовка на канве при светлом фоне (clWindow), а правые - отрисовка при темном фоне (clHighlight). Я даже попробовал указывать соответствующий цвет ImagesList.BkColor := ... - но это не помогает, при темном фоне все рисуется как на скриншоте. Присоединённый файл ( Кол-во скачиваний: 20 )
untitled.JPG 2,96 Kb |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
А сами иконки 32-битные?
Вот небольшой пример Присоединённый файл ( Кол-во скачиваний: 11 )
ImageList.rar 15,34 Kb |
|||
|
||||
| h5who |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 23.2.2008 Репутация: нет Всего: нет |
Нашел проблему, без решения правда. Я нашел ImageList с поддержкой 32 битных иконок: TexImageList v1.0 - Supports 32 bit Alpha Images
http://cc.codegear.com/Item/21269 Он нормально добавляет иконки, а вот с выводом опять проблемы. Приведенный пример с моими иконками работает просто фантастически замечательно. Но я не хочу загружать иконки в рантайме, я хочу на момент разработки загрузить иконки в лист и потом уже их отрисовывать. Есть идеи? Спасибо. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |