скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Сделать сложный фон окна



Фон окна может представлять собой повторяющиеся картинки произвольного размера.


procedure TForm1.FormCreate(Sender: TObject);
begin
  bm := TBitMap.Create;
  bm.LoadFromFile('Example.bmp');
end;

procedure TForm1.FormPaint(Sender: TObject);
var
  x, y: integer;
begin
  for x := 0 to Form1.ClientWidth div bm.Width do
    for y := 0 to Form1.ClientHeight div bm.Height do
      Form1.Canvas.Draw(x * bm.Width, y * bm.Height, bm);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  bm.Destroy;
end;

Вы можете использовать для "подложки" формы любой стиль кисти. Таким образом, можно получить окно "в полосочку", "в сеточку" и т.д.


procedure TForm1.FormCreate(Sender: TObject);
begin
  Form1.Brush.Style := bsDiagCross;
end;

Ту же задачу можно решить, используя свойство кисти Bitmap, позволяющее создавать свои стили. Размер картинки при этом всегда равен 8X8.


procedure TForm1.FormCreate(Sender: TObject);
begin
  Form1.Brush.Bitmap := TBitMap.Create;
  Form1.Brush.Bitmap.LoadFromFile('Phone.bmp');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  Form1.Brush.Bitmap.Destroy;
end;






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook