Как сделать, чтобы по достижению опренделенного размера, при перетаскивание бордюра мышкой, размер формы переставал изменяться...
|
У формы есть свойство: Constraints. Надо установить предельные значения максимальной высоты и ширины формы: Constraints.MaxWidth и Constraints.MinHeight.
|
Цитата:
|
Roman Go
Какая версия дельфи? Добавлено: У формы OnCanResize есть или что-то типа этого? |
vasketsov Delphi 5 там есть OnResize, OnCanResize и OnConstrainedResize но они мне не подходят, почему я объяснил выше...
|
Roman Go
При OnCanResize так и работает как написал, причем у меня в Delphi5 это используется. Хочешь "правильно" - обрабатывай сообщения WM_SIZING и WM_MOVING. |
Цитата:
это то до чего я дошел, только вот уже сил нет, по крайней мере сегодня, я вообще не могу понять как эта штука работает, вроде все пишется одинаково, а результата никакого Код:
type с помощью mtop я добился того чтобы она не скакала при изменении размеров сверху-вниз, думал такое же повторить, для слева-направо с помощью mleft но не прокатило, к тому же моя форма также скачет если ее тащить за углы, в смысле изменять размеры... можно конечно попробовать написать что-то типа mtop и для этого случая, но что если получится также как и с mleft... короче я в тупике... может я все таки не с той стороны подошел, как обычно, не там ищу... |
Roman Go
Цитата:
Читай на msdn.microsoft.com |
Код:
procedure qwe1(var message :Tmessage); message wm_sizing; Код:
form1.BorderStyle:=bsSingle; Код:
form1.invalidate; //repaint; refresh; |
Roman Go
The WM_SIZING message is sent to a window that the user is resizing. By processing this message, an application can monitor the size and position of the drag rectangle and, if needed, change its size or position. Делается примерно так. Во-первых, надо вызывать inherited; Во-вторых, перед этим, если не надо ничего делать, просто возвращаешь 0 (в документации написано, что надо TRUE возвращать). То же для WM_MOVING. |
Цитата:
|
Код:
type |
Время: 07:59. |
Время: 07:59.
© OSzone.net 2001-