PDA

Ver la Versión Completa : Valor Boton Ok,Cancelar de un InputBox


Alejandro73
01-10-2013, 23:47:28
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:


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:

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:

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...


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.