Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Valor Boton Ok,Cancelar de un InputBox (https://www.clubdelphi.com/foros/showthread.php?t=84293)

Alejandro73 01-10-2013 23:47:28

Valor Boton Ok,Cancelar de un InputBox
 
Estimados

Buenas tardes, mirando por ahí encontré que el valor de una variable a la que se le asigna un inputbox es vacío cuando se presiona el botón cancelar.

Tengo que solicitar un dato mediante un inputbox hasta que este sea válido o bien se presione el botón cancelar y mi problema radica en que cuando presiono el botón Ok y no ingreso valor al edit del inputbox también me devuelve el valor vacío y para este caso debo volver a solicitar el ingreso del dato que esta entre:

Código Delphi [-]
repeat      
  valor:=inputbox('Titulo','Dato a recibir','');    
  validacion......  
until unacondicion

Alguien sabe porque condición se debe preguntar para saber cuál botón se presiono en el inputbox

Desde ya muchas gracias

ecfisa 02-10-2013 00:00:36

Hola Alejandro.

Si interpreto bién lo que estas buscando creo que podes hacer:
Código Delphi [-]
var
  valor : string;
  ok : Boolean;
begin
  repeat
    valor := inputbox('Titulo','Dato a recibir','');
    ok    := valor = 'un texto';  // una validación cualquiera
  until ok;
...

Saludos :)

Caminante 02-10-2013 00:03:26

Tal vez algo asi:

Código Delphi [-]
repeat      
  valor:=inputbox('Titulo','Dato a recibir','');    
  validacion......  
until Trim(valor)<>''

Espero te sea util

Saludos

Alejandro73 02-10-2013 14:03:18

Estimados

Gracias por responder, pero como dije al principio mi problema radica en que si presiono el botón ok del input y no ingreso texto alguno se debe seguir con la secuencia del repeat .. until, ya que lo único que puede terminar este proceso es el botón cancelar o bien el botón ok con un dato.

Pero no sé cómo validar cuando se presiona el botón ok y el valor del imput es vacío.

Saludos

cloayza 02-10-2013 15:38:36

Usa inputQuery...

Código Delphi [-]
var
  valor : string;
  ok, lDone : Boolean;
begin
     repeat
          lDone := InputQuery('Titulo','Dato a recibir',Valor);
          ok    := valor = 'un texto';  // una validación cualquiera
     until lDone=False or ok;
end;

Saludos cordiales

Alejandro73 02-10-2013 16:11:05

Estimado

Muchas gracias, era lo que necesitaba.


La franja horaria es GMT +2. Ahora son las 20:44:45.

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