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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> VCL Styles как узнать цвет формы 
:(
    Опции темы
кмс
Дата 2.11.2014, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 12.2.2009
Где: Казахстан

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



В одном проекте попробовал родные скины, вроде нормально, есть парочку приятных smile
Но у меня для некоторых форм включен TransparentColor где TransparentColorValue цвет формы.
А как теперь определить цвет формы который устанавливает скин?


Это сообщение отредактировал(а) кмс - 2.11.2014, 15:15
PM MAIL   Вверх
Illusion Dolphin
Дата 2.11.2014, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

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



Если мы говорим про VCL стили, то там нет цвета формы, там есть элемент window и есть функция для его рисования, и итоге может получиться и не solid цвет, а градиент, мозаика итд. Рисуется форма (основа):
Код

  LDetails: TThemedElementDetails;
  LDetails.Element := teWindow;
  LDetails.Part := 0;
  GetWindowRect(Handle, WindowRect);
  StyleServices.DrawElement(Canvas.Handle, LDetails, Rect(0, 0, WindowRect.Width, WindowRect.Height));


Но можете попробовать StyleServices.GetStyleColor(scWindow), хотя это не универсальное решение.


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
кмс
Дата 2.11.2014, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 12.2.2009
Где: Казахстан

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



Illusion Dolphin, спасибо, попробую.

Я пробовал методом тыка через TCustomStyleServices но у меня ошибка выскакивала.
Примерно так
Код

var
Fcolor: TCustomStyleServices;
clr: integer;
..........

clr := Fcolor.GetStyleColor(scPanel); //Тут ошибка была.


Но мне нужно именно универсальный способ. Не знаю как поведет себя этот скин на разных системах с разными настройками стилей винды.


Это сообщение отредактировал(а) кмс - 2.11.2014, 22:51
PM MAIL   Вверх
кмс
Дата 3.11.2014, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 12.2.2009
Где: Казахстан

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



Я просто сглупил smile
У меня форма(bsNone) прозрачная, на ней просто Image с gif анимацией, на всю форуму.
Так зачем ей нужны стили, просто отключил для этой формы, сделал форму белой, и для прозрачности тоже установил белы цвет smile
Без стиля и гифка стала лучше смотреться smile


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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