- 0
Как программно отмасштабировать TImage
-
Похожий контент
-
- 1 ответ
- 1 493 просмотра
-
- 3 ответа
- 1 831 просмотр
-
- 3 ответа
- 1 641 просмотр
-
- 4 ответа
- 1 777 просмотров
-
- 1 ответ
- 1 885 просмотров
-
- 15 ответов
- 4 329 просмотров
-
- 2 ответа
- 1 755 просмотров
-
- 1 ответ
- 2 054 просмотра
-
- 2 ответа
- 2 966 просмотров
-
- 8 ответов
- 4 024 просмотра
-
-
Последние посетители 0 пользователей онлайн
- Ни одного зарегистрированного пользователя не просматривает данную страницу
Вопрос
sulion
Здравствуйте!
Очень нравится FireMonkey, спасибо за отличный продукт.
Помогите пожалуйста вот с каким моментом: как программно поменять размер изображения TImage ?
...
Character.Bitmap.LoadFromFile( i.m[ be, bi ].g ); {спрайтик}
Character.Position.X := ( Hall.Width - Character.Width ) / 2; {стоим посредине}
Character.Position.Y := ( Hall.Height - Character.Height); {стоим на полу}
Character.Width := PC.Width * PC.Scale;
Character.Height := PC.Height * PC.Scale;
...
Проблема: вместо того чтобы отведав пирожка расти стоя на полу, персонаж не меняется в размере.
Это - кусочек кода, который по таймеру 10 раз в секунду отрисовывает персонажа. Топорно, без всяких оптимизаций (моя первая проба после TAnimationXXX). Вообще, скорость FireMonkey впечатляет - спрайт ростом с 3/4 экрана с лёгкостью меняется без морганий на очень слабом компьютере, и тики с относительно "тяжёлой" математикой не "наползают" друг на друга по времени.
Объект PC - это персонаж, там хранятся вещмешок, умения, способности и пара полей для графики (масштаб PC.Scale и размеры в метрах PC.Height, PC.Width ).
Форма запускается в полноэкранном режиме, на ней лежит TScaledLayout растянутый Align=Client на весь экран, внутри него - фоновый рисунок Hall, персонаж Character и класс-библиотека спрайтов, имена файлов рисунков доступны как i.m[].g
Изменено пользователем sulionСсылка на комментарий
8 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.