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

Растягивание формы на весь экран. Программирование Delphi.

Источник: rgblog
Руслан Гайсин

Сегодня я расскажу как растягивал форму в Delphi во весь экран без искажения из-за разных соотношений высоты и ширины экрана. И изменение масштаба компонент установленных на форме.

Создаем новый проект в Делфи. И кидаем на форму панель - Panel1, установив для нее свойство Align = alClient (растягивать по форме).

Самой форме необходимо поменять свойства BorderStyle = bsNone и WindowState = wsMaximized

Создаем процедуру procedure FullScreen(oForm: TForm; oPanel: TPanel);

Со следующим кодом:

procedure TForm1.FullScreen(oForm: TForm; oPanel: TPanel); var percentw,percenth: integer; begin oPanel.Align := alNone; oForm.Color := clBlack; //Цвет участков за панелью if Screen.Width > 800 then begin percentw := Round(((Screen.Width - 800) / 800) * 100) + 100; percenth := Round(((Screen.Height - 600) / 600) * 100) + 100; if (percentw < percenth) then oForm.ScaleBy(percentw, 100) else oForm.ScaleBy(percenth, 100); end; oForm.Height := Screen.Height; oForm.Width := Screen.Width; oPanel.Top := Round((oForm.Height - oPanel.Height) / 2); oPanel.Left := Round((oForm.Width - oPanel.Width) / 2); end;

В данном коде вместо 800, подставляем ширину формы при разработке приложения. А вместо 600 высоту.

Я выносил эту процедуру в отдельный файл (unit), поэтому сделал передачу формы в процедуру.

Создаем процедуру FormCreate, которая выполняется при создании формы

procedure TForm1.FormCreate(Sender: TObject); begin FullScreen(Form1,Panel1); end;

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

В результате работы данного приложения, мы получим следующую картину при запуске:

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


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

Магазин программного обеспечения   WWW.ITSHOP.RU
Enterprise Connectors (1 Year term)
Delphi Professional Named User
NauDoc Enterprise 10 рабочих мест
SAP Crystal Server 2011 WIN INTL 5 CAL License
Kaspersky Endpoint Security для бизнеса – Стандартный Russian Edition. 10-14 Node 1 year Base License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Новые материалы
Мир OLAP и Business Intelligence: новости, статьи, обзоры
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100