Interrumpir un for
Hola amigos
Tengo la siguiente duda... Tengo un ciclo que realiza cierto proceso, resulta que quiero mostrar el proceso paso a paso, es decir, iteración por iteración. por ejemplo for i :=0 to n-1 do begin {Lineas de algunos cálculos} .... {Mostrar ciertos resultados de los cálculos en un memobox}... {el proceso se continúa por ejemplo haciendo click en un botón} {Continuar ejecutando otras lineas del ciclo para hacer mas cálculos} .... {Mostrar ciertos resultados de los Nuevos calculos en un memobox}... {el proceso se continúa por ejemplo haciendo click en un botón} end; Alguien puede decirme como puedo hacer lo anterior? Gracias de antemano |
Quizás esto?
memo.lines.Add('lo que quiera añadir'); |
En realidad lo que quiero es detener la ejecución del ciclo.
Como un "PARE" en cierta linea... Ejecutar una form con un botón.... esperar a que se de click sobre el boton.... y solo despues del click "CONTINUE" con la ejecución del ciclo.... |
Además de lo que dice el amigo Cadetill, tendrías que poner dentro del bucle:
Código:
Application.ProcessMessages Mirate la ayuda sobre Continue y también como abandonar un bucle en el supuesto de quisieras abandonar el ciclo antes de que finalice. Un Saludo. |
Vale, creo que no te entendí
a ver ahora (y teniendo en cuenta lo comentado por Marcos.....) Código:
var |
¿Qué no basta mostrar el formulario del memo con ShowModal? Juaría que con esto, sin continue ni ProcessMessages bastaría.
:confused: // Saludos |
Te me adelantaste cadetill. Pero reitero lo dicho. No considero necesario ProcessMessages. Dicha línea no se ejecutará mientras esté desplegada la ventana modal. Y en el supuesto de que se ejecutara querría decir que el ciclo sigue corriendo mientras se muestra en lugar de pausarse como se requiere.
// Saludos |
Cita:
|
Cita:
el código es el que sigue Código:
Convergencia:=False; |
Pues no hay ningún problema. Simplemente muestra el form con ShowModal. Probablemente lo intentas mostrar con Show lo cual, efectivamente, no detendrá el ciclo pero ShowModal sí. Por ejemplo, en este ciclo
Código:
var // Saludos |
Gracias Roman "ShowModal" era precisamente lo que necesitaba.
Gracias al foro por su colaboración.... En cada una de las respuestas aprendemos algo nuevo :cool: |
La franja horaria es GMT +2. Ahora son las 11:38:34. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi