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

Вниз

Как сделать TPanel прозрачной ?   Найти похожие ветки 

 
Shappo   (2003-03-14 09:02) [0]

Размещаю на TPanel битмапу (внешний вид своего плейера). Она не прямоугольная. Сверху потом пойдут кнопки. Так вот, не могу сделать панель прозрачной. Просто както не сталкивался с такими направлениями. Подскажите пожалуйста.


 
Сергей Зимин   (2003-03-14 09:38) [1]

На OnCreate формы делаешь

SetWindowRgn(Handle, BitmapToRegion(imgBackground.Picture.Bitmap, clFuchsia), False);

где imgBackground - твоя картинка, clFuchsia - цвет который будет прозрачным.


function BitmapToRegion(Bitmap: TBitmap; TransColor: TColor): HRGN;
var
X, Y: Integer;
XStart: Integer;
begin
Result := 0;
for Y := 0 to Bitmap.Height - 1 do begin
X := 0;
while X < Bitmap.Width do begin
while (X < Bitmap.Width) and (Bitmap.Canvas.Pixels[X, Y] = TransColor) do
Inc(X);
if X >= Bitmap.Width then
Break;
XStart := X;
while (X < Bitmap.Width) and (Bitmap.Canvas.Pixels[X, Y] <> TransColor) do
Inc(X);
if Result = 0 then
Result := CreateRectRgn(XStart, Y, X, Y + 1)
else
CombineRgn(Result, Result, CreateRectRgn(XStart, Y, X, Y + 1), RGN_OR);
end;
end;
end;


 
REA ©   (2003-03-14 09:48) [2]

Было в журнале Хакер недавно.


 
AlGin ©   (2003-03-14 17:23) [3]

Дучше создать регион заранее и подгружать из ресурсов.



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
4-88301
Timon
2003-01-24 22:12
2003.03.27
Клавиатура !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


8-88077
sergn
2002-12-16 17:26
2003.03.27
Попадание курсором мыши на букву.


14-88211
Феликс
2003-03-10 20:09
2003.03.27
гы-гы-гы! Кличко во втором раунде завалили :)


7-88268
S.P.I.R.I.T
2003-02-03 19:27
2003.03.27
клавиатура и мышка


3-87853
Димыч
2003-03-10 17:52
2003.03.27
DBGrid