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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2009, 22:00   #1
mixer94
Пользователь
 
Аватар для mixer94
 
Регистрация: 07.06.2009
Сообщений: 40
Вопрос Прозрачность внутри программы

Уважаемые программисты. Я любитель поделать красивые проги и поэтому прошу помочь в решении одного вопроса: как использовать прозрачность внутри приложения? Я так думаю решения два:
1. Для этого должны быть какие то компоненты (типа неподходящего PngComponents)
2. Возможно ли наложение полупрозрачного (png например) изображения на другое (bmp например) ну или что то типо того....

И ещё небольшой вопросик, имеется ли компонент ListBox например, у которого в качестве фона можно задать изображение?...или как это сделать в процедуре drawitem?
mixer94 вне форума Ответить с цитированием
Старый 26.11.2009, 22:28   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

а делайте все прозрачным... через свойство формы transparent. Если хотите частично что-то, то на форуме примеры есть.
по-последнему: тоже много.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 27.11.2009, 09:34   #3
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Цитата:
Сообщение от mixer94 Посмотреть сообщение
Уважаемые программисты. Я любитель поделать красивые проги и поэтому прошу помочь в решении одного вопроса: как использовать прозрачность внутри приложения? Я так думаю решения два:
1. Для этого должны быть какие то компоненты (типа неподходящего PngComponents)
2. Возможно ли наложение полупрозрачного (png например) изображения на другое (bmp например) ну или что то типо того....

И ещё небольшой вопросик, имеется ли компонент ListBox например, у которого в качестве фона можно задать изображение?...или как это сделать в процедуре drawitem?
Да уж... наверное красиво выходит ну да ладно. Скажу главное, Ваш выбор:
1. Хотим красивую программу. Отказатся от стандартных контролов, разработать свои
2. Не хотим думать и хотим все готовое. Либо искать и покупать готовое либо отказаться от красивых программам.

По первому, прозрачность можно делать просто (если ваш контрол конечно же) в классе объявить картинку (ну у меня свой CDIB()) а так любой HDC с битами связзаный, и при отрисовке окна его накладывать как фон, а когда и что в него копировать "как фон", это в главном приложении при отрисовке окна (его фона) просто скопировать кусок фона зная RECT вашего контрола, и будет вам прозрачность.

p.s. как всегда уверен либо игнорирование поста либо сочетание двух вариантов: хотим красиво и на халяву.
BOBAH13 вне форума Ответить с цитированием
Старый 27.11.2009, 19:51   #4
Css
Пользователь
 
Аватар для Css
 
Регистрация: 19.11.2009
Сообщений: 13
По умолчанию

Цитата:
Прозрачность внутри программы
А что значит "внутри"?

Можно рисовать на канве через Windows.AlphaBlend()...
Долой готовые компоненты! Учите «Win32API»!
Css вне форума Ответить с цитированием
Старый 27.11.2009, 21:03   #5
Voody
Форумчанин
 
Регистрация: 22.06.2009
Сообщений: 310
По умолчанию

Вообще стандартная прозрачность формы и всех элементов на ней:
свойство AlphaBlend - включает прозрачность
свойство AlphaBlendValue - определяет степень прозрачности
Voody вне форума Ответить с цитированием
Старый 27.11.2009, 21:13   #6
Css
Пользователь
 
Аватар для Css
 
Регистрация: 19.11.2009
Сообщений: 13
По умолчанию

А ещё можно попробовать делать обычные TImage, только загружать в них полупрозрачные картинки в формате ico...

Цитата:
Вообще стандартная прозрачность формы и всех элементов на ней
Оно не стандартное... Это в VCL сделали так: при включении Form1.AlphaBlend или Form1.TransparentColor окно становится Layered...
Но мне что-то кажется, что они как-то кривовато это сделали...
Долой готовые компоненты! Учите «Win32API»!
Css вне форума Ответить с цитированием
Старый 28.11.2009, 02:09   #7
Roof
Форумчанин
 
Аватар для Roof
 
Регистрация: 01.02.2007
Сообщений: 785
По умолчанию

Любишь делать красивые программы - смотри в сторону компонентов AlphaControls. Есть возможность свои скины разрабатывать. Для жителей России - бесплатны.
Изо всей благодати
В руках крепко сжатых
Я донесу только капли
Roof вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прозрачность SanekIrk Общие вопросы Delphi 4 30.12.2008 12:12
прозрачность Артэс Win Api 8 02.12.2008 11:24
прозрачность sergei64_89 Общие вопросы .NET 1 29.07.2008 21:43
Прозрачность ЧИЖ HTML и CSS 5 24.10.2007 17:18
Прозрачность MAcK Общие вопросы Delphi 2 21.03.2007 19:24