у меня сейчас бесконечный цикл, я хочу сделать выход из этого цикла по нажатию кнопки, как это сделать?

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
![]() ![]() |
![]() |
iriska_2 |
![]() ![]()
Сообщение
#1
|
Гость ![]() |
подскажите пожалуйста
у меня сейчас бесконечный цикл, я хочу сделать выход из этого цикла по нажатию кнопки, как это сделать? ![]() |
Гость |
![]()
Сообщение
#2
|
Гость ![]() |
может я некорректно задала вопрос
как проверить нажата кнопка или нет? |
мисс_граффити |
![]()
Сообщение
#3
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
можно чуть подробнее?
где этот цикл, к чему он привязан? внутри какого-то обработчика события? вариант использования RadioButton или CheckBox не рассматривается? Или, может, обойтись вообще без бесконечного цикла (пользоваться таймером, например). -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Гость |
![]()
Сообщение
#4
|
Гость ![]() |
я пишу прогу, где шар отбивается от стенок, по нажатию кнопки мне надо, чтобы прога завершилась
|
Гость |
![]()
Сообщение
#5
|
Гость ![]() |
т.е. закончился цикл движения шара
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Ну, а что насчет ответа на вопрос:
Цитата где этот цикл, к чему он привязан? Понимаешь, пока неизвестно, как организован цикл, возможно, его ВООБЩЕ нельзя остановить. Возможно, придется кое-что добавлять... А гадание на кофейной гуще - это не сюда... |
Гость |
![]()
Сообщение
#7
|
Гость ![]() |
цикл возникает при двойном щелчке по форме
Код constructor bol.createe(sx,sy:integer;box:tPaintBox); begin currX:=sX; currY:=sY; destX:=sX; destY:=sY; deltaX:=0; deltaY:=0; shar(box,sx,sy); end; procedure bol.shar(box:tPaintBox;sdx,sdy:integer); var key, x,y:integer; begin Box.Canvas.Pen.Width:=3; Box.Canvas.Pen.Color:=clred; Box.canvas.ellipse(currX-25,currY-25,currX+25,currY+25); Box.canvas.font.name:='Arial'; Box.canvas.font.style:=[fsBold,fsItalic]; Box.canvas.font.size:=50 div 5; x:=sdx -25+(50 - Box.canvas.textwidth('sony'))div 2; y:=sdy -25+(50 - Box.canvas.textheight('sony'))div 2; Box.canvas.textout(x,y,'sony'); Box.Canvas.Pen.Color:=clBtnFace; end; procedure bol.del(box:tPaintBox); begin Box.Canvas.Pen.Width:=3; Box.Canvas.Pen.Color:=clBtnFace; Box.canvas.ellipse(currX-25,currY-25,currX+25,currY+25); end; procedure bol.run0(box:tPaintBox); begin while (curry-25)<>0 do begin time; del(box); currx:=currx+1; curry:=curry-1; shar(box,currx,curry); end; run1(box); end; procedure bol.time; var t:integer; begin t:=5000000; while t<>0 do t:=t-1; end; procedure bol.run1(box:tPaintBox); begin while ((currx+25)<609) and ((curry+25)<609) and ((currx-25)>0) do begin time; del(box); currx:=currx+1; curry:=curry+1; shar(box,currx,curry); end; if (currx+25)>608 then run2(box); if (curry+25)>608 then run3(box); if (currx-25)<1 then run4(box); end; procedure bol.run2(box:tPaintBox); begin while ((curry-25)>0) and ((curry+25)<609) and ((currx-25)>0) do begin time; del(box); currx:=currx-1; curry:=curry+1; shar(box,currx,curry); end; if (curry-25)<1 then run1(box); if (curry+25)>608 then run3(box); if (currx-25)<1 then run4(box); end; procedure bol.run3(box:tPaintBox); begin while ((curry-25)>0) and ((currx+25)<609) and ((currx-25)>0) do begin time; del(box); currx:=currx-1; curry:=curry-1; shar(box,currx,curry); end; if (curry-25)<1 then run1(box); if (currx+25)>608 then run2(box); if (currx-25)<1 then run4(box); end; procedure bol.run4(box:tPaintBox); begin while ((curry-25)>0) and ((currx+25)>0) and ((curry+25)>0) do begin time; del(box); currx:=currx+1; curry:=curry-1; shar(box,currx,curry); end; if (curry-25)<1 then run1(box); if (currx+25)>608 then run2(box); if (curry+25)>608 then run3(box); end; |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Ух ты
![]() Да у тебя не цикл, а рекурсия... Отсюда так просто не выйдешь.... |
![]() ![]() |
![]() |
Текстовая версия | 31.03.2023 18:58 |