Вниз
Скачать: CL | DM;

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

 
Smolin   (2003-02-27 13:18) [0]

Подскажите пожалуста как сделать цвет формы прозрачным, но чтоб все объекты на ней были виды ???

И еще вопрос есть ли функция которая выставляла бы частоту обновления экрана ?


 
Bizon ©   (2003-02-27 13:41) [1]

constructor TForm1.Create(AOwner: TComponent);
begin
inherited;
HorzScrollBar.Visible:= False; // убираем сколлбары, чтобы не мешались
VertScrollBar.Visible:= False; // при изменении размеров формы
RebuildWindowRgn; // строим новый регион
end;

А вот процедура "перестройки" региона формы:

procedure TForm1.RebuildWindowRgn;
var
FullRgn, Rgn: THandle;
ClientX, ClientY, I: Integer;
begin
// определяем относительные координаты клиентской части
ClientX:= (Width - ClientWidth) div 2;
ClientY:= Height - ClientHeight - ClientX;
FullRgn:= CreateRectRgn(0, 0, Width, Height); // создаем регион для всей формы
// создаем регион для клиентской части формы и вычитаем его из FullRgn
Rgn:= CreateRectRgn(ClientX, ClientY, ClientX + ClientWidth, ClientY +ClientHeight);
CombineRgn(FullRgn, FullRgn, Rgn, rgn_Diff);
// теперь добавляем к FullRgn регионы каждого контрольного элемента
for I:= 0 to ControlCount -1 do
with Controls[I] do begin
Rgn:= CreateRectRgn(ClientX + Left, ClientY + Top, ClientX + Left +Width, ClientY + Top + Height);
CombineRgn(FullRgn, FullRgn, Rgn, rgn_Or);
end;
SetWindowRgn(Handle, FullRgn, True); // устанавливаем новый регион окна
end;



 
100ляров   (2003-02-27 15:35) [2]

Зачем так извращаться?
В каком-нить обработчике события, например OnShow пишем

Brush.Style:=bsClear;

и все.
Однако нужно позаботиться об обновлении прозрачных областей, так как после того, как поверх прозрачной области было окно, а потом оно закрылось - в этой области остается кусок этого окна.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
3-29746
Wowa-K
2003-02-19 13:38
2003.03.10
StoredProc


3-29779
Денис Курьин
2003-02-19 20:36
2003.03.10
Подскажите, почему данные не сохраняются (изменяю запросом)


14-30129
Killer2k
2003-02-23 17:04
2003.03.10
Please!!! Help me!!!


4-30179
viper
2003-01-20 21:27
2003.03.10
Запущено ли приложение...


14-30101
Adolf
2003-02-22 13:45
2003.03.10
МЕЧТА ПРОГРАММЕРА




   Наверх