Вверх ↑
Ответов: 3349
Рейтинг: 233
#1: 2010-08-15 11:17:15 ЛС | профиль | цитата
Мой эксперимент по созданию полупрозрачных окон с эффектом Aero Glass.
Add(MainForm,2953706,280,392)
{
Color=536870911
Point(Handle)
link(onCreate,12511387:doTest,[(324,412)(324,430)(268,430)(268,447)])
}
Add(InlineCode,12511387,280,441)
{
WorkPoints=#6:doTest|
DataPoints=#6:handle|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|29:uses kol,Share,Debug,windows;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|20: handle:THI_Event;|48: procedure doTest(var _data:TData;Index:Word);|3: |5: end;|0:|4:type|25: DWM_BLURBEHIND = record|36: dwFlags : DWORD;|35: fEnable : BOOL;|35: hRgnBlur : HRGN;|35: fTransitionOnMaximized : BOOL;|6: end;|0:|14:implementation|0:|160:function DwmEnableBlurBehindWindow(hWnd : HWND; const pBlurBehind : DWM_BLURBEHIND) : HRESULT; stdcall; external 'dwmapi.dll' name 'DwmEnableBlurBehindWindow';|0:|154:function DWM_EnableBlurBehind(hwnd : HWND; AEnable: Boolean; hRgnBlur : HRGN = 0; ATransitionOnMaximized: Boolean = False; AFlags: Cardinal = 1): HRESULT;|3:var|29:pBlurBehind:DWM_BLURBEHIND; |5:begin|30: pBlurBehind.dwFlags:=AFlags;|31: pBlurBehind.fEnable:=AEnable;|33: pBlurBehind.hRgnBlur:=hRgnBlur;|61: pBlurBehind.fTransitionOnMaximized:=ATransitionOnMaximized;|55: Result:=DwmEnableBlurBehindWindow(hwnd, pBlurBehind);|4:end;|0:|29:procedure THiAsmClass.doTest;|5:begin|60:DWM_EnableBlurBehind(HWND(ReadInteger(_data, handle)),true);|4:end;|0:|0:|0:|4:end.|
link(handle,2953706:Handle,[])
}
Add(StyleXP,3933069,284,354)
{
}


------------ Дoбавленo в 07.38:
Забыл, работает только на Vista and 7
------------ Дoбавленo в 07.40:
Если кому-нибудь нужно могу довести до ума.
------------ Дoбавленo в 11.17:
[vote=Нужны ли компоненты для работы под Win 7 and Vista?]
[answer=Нужны]
[answer=Нет]
[answer=Было бы неплохо]
[answer=Я не знаю]
[/vote]
карма: 1

3
файлы: 1code_20007.txt [1.4KB] [189]
Голосовали:Laetar, kernel, Genius