Дивиджей | Дата: Понедельник, 26.05.2014, 12:14 | Сообщение # 1 |
Сержант
Группа: Пользователи
Сообщений: 22
Статус: Offline
| Здравствуйте. Как на определенной области формы сделать лайфбар от количества процентов жизней персонажа из Label
|
|
| |
Armageddets | Дата: Вторник, 27.05.2014, 00:19 | Сообщение # 2 |
Лейтенант
Группа: Администраторы
Сообщений: 68
Статус: Offline
| В общем-то вариантов куча.
Первый их возможных: Кидаем на форму компонент image. Выставляем его высоту к примеру image1.height:=10;
Загружаем картинку в имейдж типо image1.Picture.loadfromfile('1.bmp');
А дальше в таймере мы ширину нашего имейджа приравниваем к какой-то переменной "здоровье" или тому же лейблу:
image1.Width:=Strtoint(label1.caption);
Вариант второй - рисовать на канве какие то квадратные одноцветные квадраты или прямоугольники в ряд в притык друг к другу. Сколько здоровья у героя, столько и квадратов рядом. А поскольку они все одного цвета, то они будут сливаться в одну длинную шкалу:
var Img:TBitmap;
В таймере делается проверка на жизни:
for i:=1 to Strtoint(Label1.caption) do Buf.canvas.draw(i*8+50,20,Img);
8 - ширина квадратов здоровья 50 - отступ слева 20 - отступ сверху
|
|
| |