![]() |
|
|
#1
|
|||
|
|||
|
Помогите пожалуйста, надо сделать бесконечный цикл по кнопке, который генерирует два рандомных числа (в диапазоне, например от 25 до 45). Эти два числа выводятся в Label. Ну и чтобы останавливать цикл по кнопке тоже.
|
|
#2
|
|||
|
|||
|
Может тогда лучше через таймер?
Без специальных ухищьрений просто бесконечный цикл: 1. Заблокирует интерфейс программы 2. Будет выводить числа с такой скоростью, что никто не увидит их. Как сделать по таймеру. 1. Бросаем на форму Button1, Button2, Label1, Timer1. 2. В Timer1 св-во Enabled ставим в False 3. Пишем следующие обработчики событий для кнопок и таймера: Код:
procedure TForm1.Button1Click(Sender : TObject);
begin
Randomize;
Timer1.Enabled := True;
end;
procedure TForm1.Button2Click(Sender : TObject);
begin
Timer1.Enabled := False;
end;
procedure TForm1.Timer1Timer(Sender : TObject);
fnction GetRnd(alow, ahigh : Integer) : Integer;
begin
Result := Round(Random*(ahigh-alow+1) + alow);
end;
begin
Label1.Caption := Format('%d - %d',[GetRnd(25,45),GetRnd(25,45)]);
end; |