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

Вниз

Народ, помогите!!!!, Как сделать форму прозрачной...   Найти похожие ветки 

 
Ifrit   (2003-03-09 13:32) [0]

Народ, помогите!!!!, Как сделать форму прозрачной, т.е. помещаю на неё TImage с каким-то рисунком и что-бы был виден только этот рисунок (без формы).


 
Mihey   (2003-03-09 20:29) [1]

Используй регионы, созданные по подобию картинки. В общем, даю две функции:

procedure CropWindow( Handle: HWnd; Picture : TPicture );
var
hrgn, hrgn1 : integer;
hdc : integer;
x, y : integer;
Color : TColor;
begin
// Color := Picture.Bitmap.Canvas.Pixels[ 0, 0 ];
Color := clWhite;
hdc := GetDC( Handle );
hrgn := CreateRectRgn( 0, 0, Picture.Graphic.Width, Picture.Graphic.Height );
for x := 1 to Picture.Graphic.Width do
for y := 1 to Picture.Graphic.Height do
if Picture.Bitmap.Canvas.Pixels[ x - 1, y - 1 ] = Color then begin
hrgn1 := CreateRectRgn( x - 1, y - 1, x, y);
CombineRgn( hrgn, hrgn, hrgn1, RGN_DIFF );
DeleteObject( hrgn1 );
end;
SetWindowRgn( Handle, hrgn, true );
//DeleteObject( hrgn );
ReleaseDC( Handle, hdc);
end;

procedure UncropWindow( Handle: HWnd; Picture : TPicture );
var
hrgn : integer;
hdc : integer;
begin
hdc := GetDC( Handle );
hrgn := CreateRectRgn( 0, 0, Picture.Graphic.Width , Picture.Graphic.Height );
SetWindowRgn( Handle, hrgn, true );
ReleaseDC( Handle, hdc );
end;

Применяй их к дескриптору окна. Если надо примеры - то дам. Готовое решение уже оформлено ввиде компонента TPlasma. Найдёшь его где угодно.


 
Ifrit   (2003-03-10 16:33) [2]

Большое спасибо... Был бы очень признателен, если бы дал примеры :)


 
Kair ©   (2003-03-10 20:55) [3]

Form1.Color:=clRed;
Form1.TransparentColor:=clRed;
Form1.TransParent:=true;
Image1.Transparent:=true;

Но на компе где с видео-картой проблемы, видно.


 
PWWA ©   (2003-03-14 17:08) [4]

есть библиотека компонентов 1st Class но она только под Дельфи 5, других пока не нашел.... относительно шустрая штука. и кроме того через "просветы" можно управлять окнами, находящимися снизу


 
Mihey   (2003-03-14 18:07) [5]

Юзая регионы можно действительно юзайть под формой что угодно. Есть компонент TPlasmaForm, он простенький, реализует этот принцип.



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
1-84335
Spartak
2003-06-16 07:46
2003.06.26
Сохранение масива в файл и загрузка из файла


14-84719
Mike B.
2003-06-05 14:48
2003.06.26
Правда об Ильиче


3-83858
DBDev
2003-06-01 16:57
2003.06.26
Как бы сделать управляемый ORDR BY в SP? Помогите ПЛЗ!


4-84828
fifo
2003-04-22 18:12
2003.06.26
Как кликнуть левой кнопкой мышки по чужому окну?


3-83961
DBDev
2003-05-29 14:01
2003.06.26
Коллеги, помогите в качестве вычисляемого поля FLOAT впихнуть...