Цитата(andriano @ 16.05.2008 17:58)

Ты бы пояснил, что именно неправильного в указанной тобой процедуре.
Т.е. по какому критерию мы можеи отличить неправильный алгоритм от правильного.
Кстати, диапазон изменения полосы прокрутки можно изменять в достаточно широких пределах. 100 - совсем не обязательно.
Я понимаю, что ставить можно хоть 1000, но 100 - это как бы проценты (101% не бывает, увеличивать не надо).
Допустим есть фигура с длиной 400 и высотой 200 - по умолчанию. Полоса прокрутки на значении 100. Если её сдвинуть влево (в меньшую сторону), фигура должна уменьшиться, как по длине, так и по ширине.
Соответственно, после уменьшения, при сдвиге ползунка вправо фигура увеличивается до своего нормального размера. При этом нет ни конкретных размеров, ни пропорции длина-ширина не известно, то есть работаем с параметрами shShape.Width, shShape.Height, а не конкретными значениями.
Вопрос заключается в том, как в формуле масштаба задействовать shShape.Width, shShape.Height и sbScaleScroll.Position?