delphi

Энтузиасты игростроя, профессионалы и начинающие любители.
Реализация совместных проектов и др.

Модераторы: Tesey, Keha

Ответить
Аватара пользователя
Monteo
Сообщения: 2101
Зарегистрирован: Чт, 16 ноя 2006 21:32:08
Откуда: Р.О.А.
Контактная информация:

delphi

Сообщение Monteo »

Возник вопрос есть переменная X, при нажатии батонов с ней происходят действия + - и тд
т.е она изменяется.

что нужно сделать, допустим дописать в процедуру батон клик, так что бы Caption Labe1 менялся на то значение которое принимает Х
допустим:
procedure TForm1.Button1Click(Sender: TObject);
begin
x:=x+50;
if x>100 then x:=100;
Label1.Caption :='X ' + FloatToStrF(x,ffFixed,8,0);
end;

Просто допустим что кнопок куча и значение X не единственное, что в каждую процедуру вписывать?


Нельзя например сделать что бы при нажатии батона вызывалась какая нибудь процедура которая бы обновляла значение X Y Z которые они, приняли после действий над ними


спасибо )
Аватара пользователя
Keha
Модератор
Сообщения: 2790
Зарегистрирован: Пт, 07 ноя 2003 19:54:15
Контактная информация:

Re: delphi

Сообщение Keha »

Очь редко захожу на этот форум, пишу на случай если вопрос все еще актуален.
Monteo писал(а):Возник вопрос есть переменная X ...
Вопросы сформулированы так, что я нечего понять не смог.

К примеру у нас есть менюшка генерациии статов для РПГ, выглядящая приблиз так

очки распределения 10
сила [+] 5 [-]
ловка [+] 5 [-]
ум [+] 5 [-]

здесь очки распределения, сила, ловка, ум, и цыфры их значений - это лайблы, а [+] и [-] это кнопки

StrVal,DexVal,IntVal - переменные для значений силы, ловки, ума
GenVal - переменая хранящая очки генерации

procedure TForm1.Button1Click(Sender: TObject); // это для кнопки [+] увеличивающей значение силы
begin
if StrVal < 9 then begin
Inc(StrVal);
dec(GenVal);
Label5.Caption :=IntToStr(GenVal); // меняем лайбл значения очков генерации
Label6.Caption :=IntToStr(StrVal);
end;
end;

procedure TForm1.Button2Click(Sender: TObject); // это для кнопки [-] уменьшающей значение силы
begin
if StrVal > 3 then begin
dec(StrVal);
inc(GenVal);
Label5.Caption :=IntToStr(GenVal); // меняем лайбл значения очков генерации
Label6.Caption :=IntToStr(StrVal); // меняем лайбл значения силы
end;
end;

аналогично для кнопок ловкости и ума.

В этом примере у нас несколько кнопок, которые меняют значения нескольких переменых.
Значения переменных в свою очередь выводим через лайблы.

Если твоя задача, как то координально отличается от этого примера, опиши ее понятней.
Аватара пользователя
+Priest+
Модератор
Сообщения: 3507
Зарегистрирован: Сб, 28 фев 2004 19:17:24
Откуда: ЪУРТ
Контактная информация:

Re: delphi

Сообщение +Priest+ »

Тоже не понял вопрос.
Monteo писал(а): Нельзя например сделать что бы при нажатии батона вызывалась какая нибудь процедура которая бы обновляла значение X Y Z которые они, приняли после действий над ними
Для этого просто объяви переменные как общие и кнопкой [Обновить] присваивай их значения лэйблам, но я не понял, почему не сделать автоматом после изменения значений.
"неразбериха я считаю то есть это полный нонсенс там насчет чего-то
то есть это можно было свободно решить то есть пообщаться" футбольный болельщик
Аватара пользователя
Monteo
Сообщения: 2101
Зарегистрирован: Чт, 16 ноя 2006 21:32:08
Откуда: Р.О.А.
Контактная информация:

Re: delphi

Сообщение Monteo »

Блин я уже не помню что я хотел то )

но примерно вспомнил в какой области, то как я это хотел выше я уже не знаю.

Ну примерно как бы есть 100 время там не знаю
пошел на работы баксы Танге заработал время потратилась, допустим мораль упала.
купил пива- выпил мораль поднялась, ну там поспал время обновилась.
качнулся у тебя стр поднялась, время потратилась бабки тоже))

как то так
Ответить

Вернуться в «Разработка и моддинг игр»