У меня есть форма Delphi с TImages на нем.На самом деле, это «поддельный» рабочий стол с «значками» (TImages).
Когда пользователь изменяет размеры формы (например, масштабирует или увеличивает ее), значки на форме должны выровняться пропорционально.
Сейчас я делаю что-то подобное с изображениями:
ImageX.Left:=Round(ImageX.Left * (Width / OldWidth));
ImageX.Top:=Round(ImageX.Top * (Height / OldHeight));
Теперь все в порядке, пока я начинаю уменьшать максимизированную форму.
В этом случае крайние правые изображения частично обрезаются границей формы (они находятся вне клиентской области формы).
Если я переместлю эти изображения в соответствии с областью клиента, положение значков будет искаженопосле уменьшения до максимального размера.
Есть идеи по улучшению алгоритма / исправления?
Спасибо!