|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.06.2009, 12:12 | #1 |
Форумчанин
Регистрация: 23.08.2008
Сообщений: 374
|
прозрачность формы.
Привет всемю Как сделать так чтоб форма была прозрачной а компоненты на ней оставались такими как есть. Спасибо.
|
04.06.2009, 12:19 | #2 |
Пользователь
Регистрация: 04.06.2009
Сообщений: 13
|
Насколько мне известно Делфи, такое невозможно
Спят усталые админы, мышки спят.Флешки и клавиатуры ждут ребят.Windows тоже спать ложится, Чтобы ночью нам приснитьсяАську закрывай. Баю-бай.
|
04.06.2009, 12:23 | #3 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
04.06.2009, 12:23 | #4 |
Форумчанин
Регистрация: 23.08.2008
Сообщений: 374
|
BaronTreep ошибку выдаёт на
Код:
|
04.06.2009, 12:30 | #5 | |
Форумчанин
Регистрация: 29.05.2009
Сообщений: 320
|
function SetLayeredWindowAttributes(hwnd: longint; crey: byte; bAlpha: byte; dwFlags: longint): longint; stdcall; external 'USER32.DLL';
Этого можно не делать. Цитата:
|
|
04.06.2009, 12:42 | #6 |
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,051
|
Поиском пользовались ????? Гугл рулит !!!
Создадим новый модуль (В последствии его будем подключать к нашим формам). Создим два типа: TChildForm (дочернее окно), TParentForm (родительское окно). Код:
Теперь по порядку с обработчиками дочирной формы: Кто создаст тот и родитель Код:
Код:
Отслежывание изминения заголовка Код:
Код:
Обработка ресайза или перемещения формы Код:
Код:
|
04.06.2009, 12:44 | #7 |
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,051
|
Продолжение
Теперь если вы создадите две формы. подключите этот модуль. В одной форме поменяете родительский клас на TParentForm а в дочерней на TChildForm и запустите на выполнения то не должно ничего показывать того что это две формы. При этом вы можете поменять параметры AlphaBlend. Но когда вам захочется закрыть форму то тут они будут разноглавствовать. Ну что ж… перекрываем в главной обработчик CloseQuery Код:
Но что будет если закрытие поступит из дочерней? И эта проблема решается В поле public созадем процедуру close которая заменит оригинальную Код:
Еще тут посмотри Исодник + оригинал статейки+картинка того что дожно получиться ! Последний раз редактировалось Noor; 04.06.2009 в 12:47. |
04.06.2009, 12:52 | #8 |
Форумчанин
Регистрация: 29.05.2009
Сообщений: 320
|
++ Заплюсовал ;-) ++
|
04.06.2009, 13:22 | #9 | |
Oldschool geek
Форумчанин
Регистрация: 09.03.2009
Сообщений: 611
|
Цитата:
У Layered Windows есть разные режимы работы. Можно просто сделать окно прозрачным. Можно установить ключевой цвет, на месте которого будет дырка. А можно сделать полноценное Layered Window, на котором можно рисовать 32–битным цветом. Не спрашивайте меня, что это значит Но это можно. Большинство компонентов наверняка будут по привычке отрисовываться плотными, так что нужно активировать полноценную Layered Window'зность и перехватывать событие erase, отрисовывая полупрозрачный фон. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
прозрачность отдельных участков формы | Романнн | Общие вопросы Delphi | 38 | 30.01.2010 20:04 |
Не ставиться прозрачность формы | Лукманов Александр | Общие вопросы Delphi | 0 | 27.04.2009 18:13 |
Прозрачность формы PNG, 2xTCV и др. | Veiron | Мультимедиа в Delphi | 6 | 25.05.2008 01:19 |
Как задать прозрачность формы | dimfil | Общие вопросы Delphi | 2 | 09.11.2007 09:53 |
Прозрачность | ЧИЖ | HTML и CSS | 5 | 24.10.2007 17:18 |