Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Question como saber el valor que muestra un edit

Hola foro como va todo ? tengo una preguntita jejeje tengo un edit que cambia de valor continuamente ! y necesito que cuando tenga un valor repetido mi programita pueda saberlo , el valor que se va a repetir varias veces es 0 .

Voy a tatar de explicarlo con un ejemplito ! tengo un edit que cambia de valor continuamente ej : 10 ; 189 ; 34 ;45 etc.
cuando encuentra el valor repetido que yo quiero , el 0 , entonces ejecuto algo ; ej : 12 ; 25 ; 55 ; 139 ; 0 ; 0 ; 0 , el valor cero se repitio 3 veces entonces ejecuto algo !

bueno perdón por dar tantas vueltas es que no soy muy bueno explicando cosas jejeje , gracias al que me entienda lo que escribí !!!
Responder Con Cita
  #2  
Antiguo 10-02-2009
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Puedes utilizar el evento OnChange del Tedit y aprovechar para comparar su contenido con el que tu deseas...

Código Delphi [-]
If Edit1.Text = '0' then
ShowMessage('valor cero.');

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 10-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Hola amigo ! disculpame por no ser tan claro ! , en un edit que tengo en el cual llegan muchos valores , lo que necesito es que al repetirse esos valores me ejecute algo

ej : los valores pueden ser 2 , 255 , 34 , 0 , 3 , 8 , 0 , 0 , 0

como se ve el cero aparece una ves pero por detras aparece otro numero haci que no hace nada ! luego aparece el valor 0 repetido 3 veces ! ese me interesa ya que se repitio un numero de veces seguidas !

mi pregunta es como reconocer cuando un valor se repite varias veces , el valor que yo quiero en este caso es el 0 .

muchas gracias amigo !
Responder Con Cita
  #4  
Antiguo 10-02-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Podrías tener una variable de tipo char que guarde el último valor escrito en el edit. Entonces, en el evento OnChange comparas el nuevo valor del edit con el anterior; si coinciden es que tienes una repetición, y si es cero, ya la encontraste:

Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
begin
  if (Edit1.Text = CaracterPrevio) and (CaracterPrevio = '0') then
    ShowMessage('We have a winner')
  else
    CaracterPrevio := Edit1.Text;
end;

// Saludos
Responder Con Cita
  #5  
Antiguo 10-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Talking

ok amigo lo voy a probar y te cuento que onda !
Responder Con Cita
  #6  
Antiguo 11-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Muchas gracias amigos por poner interes en un tema haci tan inocente ! , es que no estaba con todas las pilas jejeje , ha lo resolvi de esta manera !
Código Delphi [-]
            if edit1.Text = IntToStr(0) then
begin
    contador := contador + 1
              end
            else
begin
                    contador := 0;
end;

            if contador = 30 then
            begin
                   beep
            end;
otra pregunta que no tiene nada que ver jeje , como se hace para identar en este editor alguien que me diga !

Última edición por marcoszorrilla fecha: 11-02-2009 a las 15:08:03.
Responder Con Cita
  #7  
Antiguo 11-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
y por supuesto inicializas el contador a 0 en el formpaint o en el oncreate del form por ejemplo
Responder Con Cita
  #8  
Antiguo 11-02-2009
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 203
Poder: 17
alquimista Va por buen camino
Smile

Amigo creo que puedes reducir tu código un poco:

Código Delphi [-]
if edit1.Text = IntToStr(0) then
   inc(contador)
            else
  contador := 0;

            if contador = 30 then beep;

Prueba a ver que debe de hacer lo mismo.
Si pones IntToStr(0) te da igual haber puesto if edit1.Text ='0'

Un saludo
Responder Con Cita
  #9  
Antiguo 11-02-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por gaston260 Ver Mensaje
otra pregunta que no tiene nada que ver jeje , como se hace para identar en este editor alguien que me diga !
Hola, tu codigo debe estar entre las etiquetas [ delphi] [ /delphi] sin los espacios.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #10  
Antiguo 11-02-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Y ya entrados en gastos de reducción de código, la comparación

Código Delphi [-]
if edit1.Text = IntToStr(0) then

queda más sencilla así:

Código Delphi [-]
if edit1.Text = '0' then

Así evitas una llamada a función.

// Saludos
Responder Con Cita
  #11  
Antiguo 11-02-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Disculpen que interrumpa el debate, pero no puedo sentirme un tanto inquieto por las soluciones que se han estado brindando.

Se ha recomendado hacer uso del evento OnChange, pero me parece fundamental tener presente algo: el evento OnChange se dispara con cada cambio en el TEdit, por tal motivo debe analizarse la forma en el que el TEdit recibe el contenido.

No es lo mismo recibir las pulsaciones de una persona, que el valor de forma directa desde alguna variable, función o algún método de un objeto.
Si el valor lo teclea una persona puede llegarse a detectar lecturas erróneas: digamos que quiere teclear 35; el evento se dispará dos veces: 1) cuando presione 3, donde el valor leído sera 3, y 2) cuando presione 5, donde el valor recién será de 35.

Si el contenido en cambio es leído de forma directa por algún otro medio, la lectura si es posible.

Puede que gaston260 haya resuelto su duda, al parecer recibe los datos de forma directa. Eso es bueno, ¿pero si así no lo fuera?

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #12  
Antiguo 12-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Thumbs up

Gracias delphius !! esas explicaciones son las que me hicieron ser un seguidor tuyo , no pretendo ser un "chupa medias" pero se nota que estas muy instruido y la verdad es un gusto poder leer cada linea de lo que escribes ! , con respecto al tema yo no use el evento onchange simplemente por que queria que se ejecutara mi condicion en otro punto del codigo ! , y no se estas cosas vasicas que me explicas !! gracias por el aporte amigo !
Responder Con Cita
  #13  
Antiguo 13-02-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por gaston260 Ver Mensaje
Gracias delphius !! esas explicaciones son las que me hicieron ser un seguidor tuyo , no pretendo ser un "chupa medias" pero se nota que estas muy instruido y la verdad es un gusto poder leer cada linea de lo que escribes ! , con respecto al tema yo no use el evento onchange simplemente por que queria que se ejecutara mi condicion en otro punto del codigo ! , y no se estas cosas vasicas que me explicas !! gracias por el aporte amigo !
¿Seguidor?
Gaston260 no se has estado fumando, tomando, o consumiendo pero te advierto que no es bueno seguirme demasiado la corriente. Falta que me digas que quieres ser como yo... ¡el mundo ya tiene suficiente con un Delphius y NewDelphius, otro más en el mundo sería un ataque de locura global!

¿Muy instruído?
¡Por dios, estás enfermo! ¡No estoy instruído, estoy destruído! Pero que no cunda el pánico... tengo la cura: te me sales afuera de casa, te vas al centro a pasear, te distraes con los paisajes, llama a alguien y pasa un buen momento. La dosis debe ser una vez a la semana, si la locura aumenta dobla la dosis... y debes estar afuera por no menos de 4 horas.

Saludos y gracias por el pedacito que me toca.
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #14  
Antiguo 14-02-2009
gaston260 gaston260 is offline
Miembro
 
Registrado: ene 2008
Posts: 169
Poder: 17
gaston260 Va por buen camino
Post

jajaja Amigo si piensas que fumo espirales jajaja no es haci ! pero no seas tan modesto por favor ! es muy bueno tener a alguien como vos en el foro ! y te lo digo por que cuando explicas algo lo haces y ademas explicas como funciona ! , no te das cuenta el gran aporte que haces ! , yo no quiero ser como nadie por que simplemente soy yo ! jejeje te repito que cuando explicas algo ademas lo haces dando la explicasion del porque ! y como lo explicas sin ser sobervio ni nada por el estilo eso ami me gusta no se a los demas usuarios del foro ? , recuerdo que una vez pedi si me podias responder vos ! jajaja nunca me respondiste amigo ! bueno los maestros son haci ! no los podes entender bien si no estas en sus "zapatos" ! bueno pido un club de fans !! jajaja ha con respecto a la docis ... no hay problema ! esta cubierta ! jajaja

pd : saludos amigo , si me respondes te ago una pregunta de programacion !
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Como sumar un valor de un edit y reflejar incremento en el mismo? The_Animal Varios 3 31-12-2007 01:12:48
Como saber si un valor es entero? Gaim2205 Varios 4 19-09-2007 19:10:44
¿Como puedo hacer que aumente el valor de un edit? Nelly Varios 7 18-04-2007 05:33:27
Como saber si se entro una cadena determinada en un edit Tauro78 Varios 2 26-03-2007 11:18:03
Como Saber Si Dbedit O Edit Esta Vacio mainau Varios 5 17-07-2004 12:42:04


La franja horaria es GMT +2. Ahora son las 09:00:37.


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
Copyright 1996-2007 Club Delphi