Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Загрузка PNG в TcxButton 
V
    Опции темы
DarkProg
Дата 3.11.2011, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 1
Всего: 19



В общем имеем TcxButton - менять его нельзя.

Необходимо при определённых условиях менять глиф. Глиф не должен хранится на жёстком диске, т.е. его засовываем в ресурсы и никак иначе.

Относительная победа есть...

Код

bAttachFile:TcxButton
...
       pict:=TGDIPPicture.Create;
       pict.Transparent:=true;
       if CheckExistFiles() then//тут условие загрузки 
            pict.LoadFromResourceName(HInstance, 'pictYesAttach')
          else
            pict.LoadFromResourceName(HInstance, 'pictNoAttach');
       bAttachFile.Glyph:=TBitmap.Create;
       bAttachFile.Glyph.Height:=22;
       bAttachFile.Glyph.Width:=22;
       SetBkMode(bAttachFile.Glyph.Canvas.Handle, TRANSPARENT);
       bAttachFile.Glyph.Canvas.Draw(0,0, pict) ;
       //bAttachFile.Glyph.Assign(pict); - такое не работает, т.к. TGDIPPicture не может быть преобразован в TBitmap
       FreeAndNil(pict);


картинка в конечном итоге вышеприведённым кодом загрузилась, но нет прозрачности...как сделать так чтобы была прозрачность?


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
MetalFan
Дата 7.11.2011, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 5
Всего: 128



чтоб работали картинки png норм, используй PngComponents, в частности TPngBitBtn


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
DarkProg
Дата 7.11.2011, 19:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 1
Всего: 19



Цитата(MetalFan @  7.11.2011,  15:23 Найти цитируемый пост)
чтоб работали картинки png норм, используй PngComponents, в частности TPngBitBtn 

Минус в репу поставить, за невнимательность? 
Цитата(DarkProg @  3.11.2011,  17:32 Найти цитируемый пост)
В общем имеем TcxButton - менять его нельзя.

Я это написал специально, т.к. я по заданию не могу сменить компонент


Вообще я решил проблему - правда через одно место, но решил - необходимо использовать TcxImageList, туда грузим картинки и потом используем метод
Код

GetImage({индекс картинки}, {битмап в который хотим загрузить})


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


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.2178 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.