Вниз
Скачать: CL | DM;

Как сделать что бы форма меняла размеры проаорционально?   Найти похожие ветки 

 
DR0N ©   (2006-02-26 18:05) [0]

сабж


 
Desdechado ©   (2006-02-26 18:10) [1]

> проаорционально
относительно чего и в каких случаях?


 
Eraser ©   (2006-02-26 18:17) [2]


> DR0N ©   (26.02.06 18:05)

обрабатывать сообщение WM_WINDOWPOSCHANGING примерно так
Message.WindowPos.cy := Round(Message.WindowPos.cx / FAspect);, где FAspect нужное соотношение сторон, например 1,3 (640/480).
Но при обработке возможно надо учитывать некоторые доп. факторы.


 
DR0N ©   (2006-02-26 20:20) [3]

Так ну вроде то что надо. Это можно писать в
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean); ?
Просто все мессаги тут обрабатываю и не совсем понимаю как у Message может быть параметр WindowPos, если это cardinal? и Cx - это ширина получается? А то название какое то не стандартное.


 
Eraser ©   (2006-02-26 21:10) [4]


> DR0N ©   (26.02.06 20:20) [3]


> Так ну вроде то что надо. Это можно писать в
> procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
>
>  var Handled: Boolean); ?

не получится, т.к. WM_WINDOWPOSCHANGING отсылается синхронно.
Т.е. нужно делать стандартный обработчик сообщения типа
procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
или же подменять оконную процедуру.

> Просто все мессаги тут обрабатываю и не совсем понимаю как
> у Message может быть параметр WindowPos, если это cardinal?

см. справку, там подробно описаны параметры.


 
DR0N ©   (2006-02-26 21:29) [5]

О, сенкс вроде все работает...
правда константные размеры формы не учитываются и по высоте мышкой не растягивается, придется руками в обработчике писать =(


 
Eraser ©   (2006-02-26 21:35) [6]


> DR0N ©   (26.02.06 21:29) [5]


> правда константные размеры формы не учитываются и по высоте
> мышкой не растягивается, придется руками в обработчике писать
> =(

это всё можно учитывать при обработке этого сообщения. Я показал простейший пример просто.


 
DR0N ©   (2006-02-26 22:34) [7]

Да, спасибо, я все понял.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.079 c
2-1142851497
pavlin_pah
2006-03-20 13:44
2006.04.02
StringGrid (изменение цвета ячейки)


9-1127387920
Signate
2005-09-22 15:18
2006.04.02
Ландшафт


15-1142005423
VitV
2006-03-10 18:43
2006.04.02
Компоненты для работы с БД.


2-1142416078
Amina
2006-03-15 12:47
2006.04.02
F1Book помогите!!!


2-1142609743
Fenix
2006-03-17 18:35
2006.04.02
Хранение доп информации.




   Наверх