Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Прозрачный TPanel 
:(
    Опции темы
mr.Anderson
Дата 17.4.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


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

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



Вопрос актуален.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Klin
Дата 18.4.2007, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

Репутация: 20
Всего: 25



Пытался попробовать со способом SenkraD`а, но пока изменить могу только окно. Кстати у Image (почти у него) хэндл есть:
Код

Image1->Picture->Bitmap->Handle;

Почти получилось с другим вариантом, но он делает его полностью прозрачным


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
SparF
Дата 5.9.2007, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 387
Регистрация: 14.9.2006
Где: Санкт-Петербург/М осква

Репутация: нет
Всего: 18



Цитата(SenkraD @  17.4.2007,  18:09 Найти цитируемый пост)
Если TPanel, то возможно так (мож надо ещё форме прозрачность разрешить)
Код

    SetWindowlong(Panel1->Handle, GWL_EXSTYLE,
        GetWindowLong(Panel1->Handle, GWL_EXSTYLE) & ~WS_EX_LAYERED);
    SetWindowlong(Panel1->Handle, GWL_EXSTYLE,
        GetWindowLong(Panel1->Handle, GWL_EXSTYLE) | WS_EX_LAYERED);
    SetLayeredWindowAttributes(Panel1->Handle, 0, 125, LWA_ALPHA);


Попробовал так, что-то ноль реакции - есть какие-нть предположения, что можно сделать?  smile

Добавлено через 4 минуты и 23 секунды
Добавлю  - нужен полностью прозрачный TPanel (под ним будет картинка, а на нем - кнопки двигаются графические, так вот картинку при текущем раскладе под панелью совсем не видно)....



--------------------
Люди, не пользуйтесь пиратским программным обеспечением - переходите на Linux!
PM MAIL ICQ   Вверх
Alexeis
Дата 6.9.2007, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

Репутация: 26
Всего: 459



Цитата(SparF @  5.9.2007,  23:40 Найти цитируемый пост)
Попробовал так, что-то ноль реакции - есть какие-нть предположения, что можно сделать? 

  И не удивительно, если внимательно читать справку, то слои можно устанавливать только парент окну, но не чайлду. Что-то подобное можно сделать, если использовать 2 формы. 1я дырявая (видны только компоненты) у нее своя прозрачность, а вторая пустая форма с другой прозрачностью расположена ниже этой дырявой формы. В разделе по делфи мы уже испробовали этот вариант. Работает довольно стабильно, правда на слабых машинах такое окошко хорошо притормаживает при перемещении. Но это все равно только 2 прозрачности. Чтобы установить каждому нужно каждый контрол поместить на свою форму smile


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
SparF
Дата 6.9.2007, 00:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 387
Регистрация: 14.9.2006
Где: Санкт-Петербург/М осква

Репутация: нет
Всего: 18



Цитата(Alexeis @  6.9.2007,  00:09 Найти цитируемый пост)
Чтобы установить каждому нужно каждый контрол поместить на свою форму

Изврат однако))))))))))))))
тогда поставлю вопрос по другому (надеюсь за оффтоп не примут)
Как еще можно несложно добиться эффекта появления движущейся кнопки из-за невидимой черты (кнопки двигаются в пределах невидимого/прозрачного прямоугольника на форме, что-то вроде бегущей строки из кнопок)
PS заранее спасибо.


--------------------
Люди, не пользуйтесь пиратским программным обеспечением - переходите на Linux!
PM MAIL ICQ   Вверх
Alexeis
Дата 6.9.2007, 00:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

Репутация: 26
Всего: 459



Выползать из под панели и заползать под другую панель. Панели не имеет бордюра.

Добавлено через 1 минуту и 31 секунду
Для этого нужно всего лишь установить им правильный z order.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
SparF
Дата 6.9.2007, 01:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 387
Регистрация: 14.9.2006
Где: Санкт-Петербург/М осква

Репутация: нет
Всего: 18



Цитата(Alexeis @  6.9.2007,  00:42 Найти цитируемый пост)
Выползать из под панели и заползать под другую панель. Панели не имеет бордюра

Да, пожалуй, это единственный вариант.
Alexeis, спасибо)))))

Добавлено через 1 минуту и 36 секунд
....правда в этом случае не будет видна фоновая картинка формы.... =(

Добавлено через 7 минут и 33 секунды
....мда...по-человечески походу никак, придется дробить картинку на несколько частей, и части по бокам формы делать выше кнопок...


--------------------
Люди, не пользуйтесь пиратским программным обеспечением - переходите на Linux!
PM MAIL ICQ   Вверх
Alexeis
Дата 6.9.2007, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

Репутация: 26
Всего: 459



  Тогда можно вообще отказаться от панелей и переопределить перерисовку движущейся кнопки. В нужный момент (по OnPaint) просто рисовать фрагмент фоновой картинки на кнопке.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

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

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

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

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


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

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


 




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


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

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