Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.12.30;
Скачать: [xml.tar.bz2];

Вниз

Возможно ли при работе программы изменить ее интерфейс   Найти похожие ветки 

 
Vitaliygavrilov   (2003-12-17 10:55) [0]

Здравствуйте!
Скажите пожалуйста возможно ли изменение программы ее интерфейса с разрешения 1024х800 на 800х640. Причем при ее работе.
Заранее спасибо Гаврилов В.А.


 
alex_***   (2003-12-17 11:02) [1]

Как понять изменить интерфейс? Размеры формы и расположение контролов?


 
TUser   (2003-12-17 11:04) [2]

Почему бы и нет. Переделываешь Top, Left, Width и Height для всех визуальных компонентов.


 
Babay   (2003-12-17 11:04) [3]

Да..
Правильные алигны для элементов
и свойства форм width, Height ну возможно еще Left, Top.

Прога следит за разрешением экрана и перестраивает размеры форм при необходимости.


 
Babay   (2003-12-17 11:05) [4]

:=)))# ГЫ-ГЫ !! всем.


 
alex_***   (2003-12-17 11:06) [5]

гемора много.. легче зашиться на 800х600 и горя не знать


 
Alex_K   (2003-12-17 12:05) [6]

вот такой модуль - писал не я - нашёл в инете
после создания формы (в конце NewFormCreate) выполнить
ScaleForm(NewForm)
ну естественно правильно расставить свойства компонентов на форме
Scaled в True, FullRepaint в True

unit scale;

interface

uses
Forms, WinTypes, WinProcs, SysUtils;

procedure ScaleForm(Sender: TObject);

implementation

procedure ScaleForm(Sender: TObject);
const
{измените это так, чтобы это соответствовало режиму разрешения во время разработки}
DesignScrY: LongInt = 768;
DesignScrX: LongInt = 1024;
DesignBorder: LongInt = 4; {значение в Панели Управления + 1}
var
SystemScrY: LongInt;
SystemScrX: LongInt;
SystemBorder: LongInt;
OldHeight: LongInt;
OldWidth: LongInt;

begin
SystemScrY := GetSystemMetrics(SM_CYSCREEN);
SystemScrX := GetSystemMetrics(SM_CXSCREEN);
SystemBorder := GetSystemMetrics(SM_CYFRAME);
with Sender as TForm do
begin
Scaled := True;
AutoScroll := False;
Top := Top * SystemScrX div DesignScrX;
Left := Left * SystemScrX div DesignScrX;
OldHeight := Height + (DesignBorder - SystemBorder) * 2;
OldWidth := Width + (DesignBorder - SystemBorder) * 2;
ScaleBy((OldWidth * SystemScrX div DesignScrX - SystemBorder * 2),
(OldWidth - DesignBorder * 2));
{
Для форм не имеющих границ измените предшествующие три строки следующим способом:

OldHeight := Height;
OldWidth := Width;
ScaleBy(SystemScrX, DesignScrX);
}
Height := OldHeight * SystemScrY div DesignScrY;
Width := OldWidth * SystemScrX div DesignScrX;
end;
end;

begin
end.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
1-99547
Ivolg
2003-12-16 11:18
2003.12.30
Конвертация!


14-99735
Agrippina
2003-12-04 18:26
2003.12.30
Причины и следствия


4-99827
Sergey Koshelev
2003-11-03 13:10
2003.12.30
Multimedia timer


6-99670
Makhanev A.S.
2003-10-31 10:59
2003.12.30
TServerSocket/TClientSocket - насколько они мощны?


8-99649
Novenkij
2003-08-26 18:54
2003.12.30
Как сделать изображения чёрно-белым





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский