Графіка вікон та їх програмування, Різне, Програмування, статті

У цій статті описується створення нестандартних вікон. Для цього нам знадобиться 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;

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


Все зроблено. Незабаром буде продовження.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*