(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Графика окон и их программирование

Источник: pblog

В этой статье описывается создание нестандартных окон. Для этого нам понадобится Delphi (желательно Delphi 7 или RAD Studio). Все графические объекты созданы в Photoshop 11.

Для начала уберём стандартный заголовок у окна:
Form1>Border Style>bsNone
и
Form1>Position>poScreenCenter

1.Делаем графический заголовок.
В виде заголовка у нас будет TImage.
Поставьте его на форму и присвойте ему имя Title (Image1>Name>Title).
Загрузите в него изображение (можно самое простое нарисовать в пеинте, но если хочется чего то более стильного делаем в фотошопе).
Установите в свойстве Align значение alTop.
И Height (Высоту) желательно 25, или как захотите только не слишком большую.
Ставим свойство Stretch: True
Теперь программируем заголовок:


procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND,$F012,0);
end;

Теперь окно можно (таскать) за наш заголовок.

2. Делаем рамку
Кидаем на форму три компонента TImage и присваиваем им имена:
Image1>Name>Left
Image2>Name>Right
Image3>Name>Bottom

Имагу Left ставим свойство Align>alLeft и Cursor: crSizeWE
Имагу Right ставим свойство Align>alRight и Cursor: crSizeWE
Имагу Bottom ставим свойство Align>alBottom и Cursor: crSizeNS
И у всех них свойство Stretch: True

Делаем ширину у имагов Left и Right 5,
а высоту у Bottom тоже 5.
Загружаем в них изображения.
Программируем:


procedure TForm1.BottomMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND,$F006,0);
end;

procedure TForm1.LeftMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND,$F001,0);
end;

procedure TForm1.RightMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
Perform(WM_SYSCOMMAND,$F002,0);
end;

Теперь дело остаётся за малым: кнопка закрыть, свернуть и цвет фона окна.
Поставьте на заголовок два компонента TImage и загрузите в них изображения. Меняем их названия:
Image1>Name>Close1
Image1>Name>Minimize
Программируем:


procedure TForm1.Close1Click(Sender: TObject);
begin
Close;
end;

procedure TForm1.MinimizeClick(Sender: TObject);
begin
Application.Minimize;
end;

Программируем форму:


procedure btnPos;
begin
Form1.Close1.Top := 0;
Form1.Close1.Left := Form1.Width-Form1.Close1.Width;
Form1.Minimize.Top := 0;
Form1.Minimize.Left := Form1.Width-Form1.Close1.Width-Form1.Minimize.Width;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
btnPos;
end;

procedure TForm1.FormShow(Sender: TObject);
begin
Form1.DoubleBuffered := True;
Form1.AlphaBlend := true; // Разрешаем прозрачность
Form1.AlphaBlendValue := 230; // Устанавливаем прозрачность
end;

Можно ещё добавить надпись на заголовке.

Всё сделано. Вскоре будет продолжение.

Ссылки по теме

Файлы для загрузки


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 31.08.2009 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Delphi Professional Named User
Enterprise Connectors (1 Year term)
TeeBI for RAD Studio Suite with source code single license
IBM DOMINO COLLABORATION EXPRESS AUTHORIZED USER ANNUAL SW SUBSCRIPTION & SUPPORT RENEWAL
Oracle Database Standard Edition 2 Named User Plus License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
СУБД Oracle "с нуля"
Delphi - проблемы и решения
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100