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

Вниз

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

 
AirsMedia ©   (2002-06-05 16:54) [0]

Мне нужно из картинки создать окно, различной формы.


 
Siava ©   (2002-06-06 10:18) [1]

Могу прислать компонент


 
Вовчик   (2002-06-06 19:42) [2]

function BitmapToRegion(Bitmap: TBitmap; TransColor: TColor): HRGN;
var
X, Y: Integer;
XStart: Integer;
begin
Result := 0;
with Bitmap do
for Y := 0 to Height - 1 do
begin
X := 0;
while X < Width do //Пропускаем прозрачне точки
begin
while (X < Width) and (Canvas.Pixels[X, Y] = TransColor) do
Inc(X);
if X >= Width then
Break;
XStart := X;
//Пропускаем непрозрачные точки
while (X < Width) and (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;

procedure TZast.FormCreate(Sender: TObject);
Var
bit: HRGN;
Pict: TBitMap;
begin
Pict:= TBitMap.Create; // Критима переменную типа BitMap
Pict.LoadFromFile("1.bmp"); //Загружаем картинку из файла
Bit:= BitmapToRegion(Pict, 0); //Создаем регион 0-цвет который делаем невидимым (ЧЕРНЫЙ)
SetWindowRgn(Zast.Handle, Bit, true);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-7956
AFrolov
2002-09-24 10:14
2002.10.03
Как сделать кнопку которая оставалась бы нажатой?


1-7963
Бильврёст
2002-09-24 10:11
2002.10.03
Проблемы с рекурсией и возвратом управления в нужную точку.


1-7888
Ryser
2002-09-21 15:40
2002.10.03
Кто-нибудь сталкивался с написанием моделирования системы


1-8043
Korona
2002-09-22 17:40
2002.10.03
Как сделать окно активным?


8-8077
Татар2000
2002-06-06 09:33
2002.10.03
Простейщая анимация