Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.03;
Скачать: CL | DM;

Вниз

Прозрачность   Найти похожие ветки 

 
гыгы   (2008-07-04 20:40) [0]

Как сделать что бы сама форма была прозрачная а компоненты на ней нет? Я сделал на свойствах формы:
AlphaBlend - True
AlphaBlendValue - 100
но прозрачна не только форма но и все находящиеся на ней, а я хотел бы что бы форма прозрачна а например Лейбл на ней видно отчетливо.как это сделать, заранее спасибо


 
Rouse_ ©   (2008-07-04 20:44) [1]

procedure TForm1.Button1Click(Sender: TObject);
var
 I, X, Y: Integer;
 TmpReg, WindowRegion: HRGN;
 hRect: TRect;
begin
 hRect := GetClientRect;
 X := (Width - hRect.Right) div 2;
 Y := Height - hRect.Bottom - GetSystemMetrics(SM_CYSIZEFRAME);
 WindowRegion := CreateRectRgnIndirect(hRect);
 GetWindowRgn(Handle, WindowRegion);
 try
   for I := 0 to ComponentCount - 1 do
     with TControl(Components[I]) do
     begin
       if Parent = Self then
       begin
         TmpReg := CreateRectRgn(Left + X, Top + Y, Width + Left + X, Height + Top + Y);
         try
           CombineRgn(WindowRegion, TmpReg, WindowRegion, RGN_XOR);
         finally
           DeleteObject(TmpReg);
         end;
       end;
     end;
   TmpReg := CreateRectRgnIndirect(hRect);
   try
     GetWindowRgn(Handle, TmpReg);
     CombineRgn(WindowRegion, TmpReg, WindowRegion, RGN_XOR);
     SetWindowRgn(Handle, WindowRegion, True);
   finally
     DeleteObject(TmpReg);
   end;
 finally
   DeleteObject(WindowRegion);
 end;
end;


 
Renegat   (2008-07-04 20:56) [2]

> [1] Rouse_ ©   (04.07.08 20:44)

Речь видимо шла не о полной прозрачности, а только об альфа-блендинге...
может быть, наследовать кнопки не от того полупрозрачного окна, а от "приклеенного" к нему ещё одного, над которым прочтено заклятие из [1]?
Криво конечно.
но работать будет



Страницы: 1 вся ветка

Текущий архив: 2008.08.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1215184038
fog
2008-07-04 19:07
2008.08.03
ADO. Присвоение результата Execute


15-1213716332
Dmitry S
2008-06-17 19:25
2008.08.03
Перестановки


15-1213558693
Pavia
2008-06-15 23:38
2008.08.03
Современные компьютерные технологии


15-1213818885
Сергей_77
2008-06-18 23:54
2008.08.03
Разработка серьёзного ПО


2-1214919159
Фленов
2008-07-01 17:32
2008.08.03
Как засунуть файл в *.exe ?