Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.28;
Скачать: CL | DM;

Вниз

Resize формы   Найти похожие ветки 

 
ghg ©   (2003-04-15 16:04) [0]

Хочется поиметь нормальное масштабирование с сохранением пропорций.
При уменьшении размера формы все компоненты на форме сворачиваются в точку.
Ниже написан код действующий при resize"е формы. Что в нем не правильно?

procedure TForm2.FormCanResize(Sender: TObject; var NewWidth,
NewHeight: Integer; var Resize: Boolean);
begin
if (NewWidth/Newheight)>otnoshenie then newwidth:=round(otnoshenie*Newheight)
else newheight:=round(Newwidth/otnoshenie);
if (Newheight<574)or(NewWidth<735) then
begin
Newwidth:=735;
NewHeight:=574;
end;
ChangeScale(newwidth,form2.width);
end;


Параметр
otnoshenie:=form2.width/form2.height;

вычисляется при создании формы и не меняется в дальнейшем.


 
ZeroDivide ©   (2003-04-15 16:09) [1]

Форма имеет
МаxHeight и MaxWidth для таких случаев.


 
ghg ©   (2003-04-15 16:32) [2]

И при чем тут МаxHeight и MaxWidth?


 
Diouzshev ©   (2003-04-15 17:26) [3]

не мучься? используй свойство Tcomponent.Ancors
размеры кнопок, едитов и пр. меняться не будут, но форма расползется красиво


 
Diouzshev ©   (2003-04-15 17:26) [4]

не мучься! используй свойство Tcomponent.Ancors
размеры кнопок, едитов и пр. меняться не будут, но форма расползется красиво


 
ghg ©   (2003-04-15 17:41) [5]

так мне надо чтобы и все чтоб на форме тоже расползлось

такое ощущение что глючит ChangeScale


 
ghg ©   (2003-04-15 18:27) [6]

разобрался

надо было вместо ChangeScale, использовать ScaleControls

всем спасибо



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

Текущий архив: 2003.04.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
14-91547
tipman
2003-04-11 16:09
2003.04.28
активация окна


14-91481
Supreme 2
2003-04-09 17:50
2003.04.28
Хорошо ли быть фанатом?


7-91566
Demon
2003-03-11 18:11
2003.04.28
Указатель на 16-разрядный процесс


1-91374
Chelny
2003-04-15 00:30
2003.04.28
String to Float


1-91298
Andrey007
2003-04-17 15:08
2003.04.28
Подскажите, пожалуйста, по поводу изменения разрешения экрана.