Архив исходников программ, модулей и компонентов на Delphi


Начальная страница

Поиск по базе



Операционная система
Настройка приложения
Взаимодействия приложений
Файлы и директории
Строки и символы
Математика
Базы данных
Интернет и сеть
Мультимедиа
Аппаратная часть
VCL
Другие разделы [0]
 

Количество записей в базе - 537
Сегодня добавлено – 0

Внешний вид компонентов



Вернуться к списку функций
 Создание непрямоугольных окон.

 Прислал: Nikolay (Moscow) ( 27 апреля 2002 г. )
©  http://delphi.mastak.ru
 Описание:
Данный пример наглядно показывает как можно создавать прямоугольные окна, по
картинке.

 Зависимости:
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms.

 Исходный текст:
{ **** UBPFD *********** by http://kladovka.net.ru/delphibase/ ****
>> Создание непрямоугольных окон.

Данный пример наглядно показывает как можно создавать прямоугольные окна, по
картинке.

Зависимости: Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms.
Автор:       Nikolay, hapnik@mail.ru, Moscow
Copyright:   http://delphi.mastak.ru
Дата:        27 апреля 2002 г.
***************************************************************** }

// Свойства окна небходимо поставить
//Borders=None
var
 regn, tmpRegn : integer;// регион окна и временный регион
 x, y : integer; // координаты пикселя
 nullClr : TColor; // «прозрачный цвет»
begin
 nullClr := image1.picture.Bitmap.Canvas.Pixels[ 0, 0 ];
// Image1 это картинка по которой создается форма окна
 regn := CreateRectRgn( 0, 0, image1.picture.Graphic.Width, image1.picture.Graphic.Height );
 for x := 1 to image1.picture.Graphic.Width do
   for y := 1 to image1.picture.Graphic.Height do
     if image1.picture.Bitmap.Canvas.Pixels[ x - 1, y - 1 ] = nullClr then begin
       tmpRegn := CreateRectRgn( x - 1, y - 1, x, y);
       CombineRgn( regn, regn, tmpRegn, RGN_DIFF );
       DeleteObject( tmpRegn );
     end;
 SetWindowRgn(form1.handle, regn, true);


Вернуться к списку функций

Наверх ▲