Ir al contenido


Foto

ACTIVAR O DESACTIVAR UN BOTON


  • Por favor identifícate para responder
29 respuestas en este tema

#1 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 10:16

¿cOMO LE HAGO PARA ACTIVAR O DESACTIVAR Y COMO LO DESACTIVO? EL ASUNTO ES QUE CUANDO NO ESCRIBA NADA KIERO DESACTIVAR EL BOTON Y CUANDO ESCRIBA ALGO QUIERO ACTIVASERLO Y HAGA LA BUSQUEDA COMO REALIZO ESO? Y EN QUE METODO GRACIAS?
  • 0

#2 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 26 febrero 2010 - 10:36

Hola
Pregunto:
Quieres escribir en un edit?.
Si no escribes nada que el boton no funcione y si escribes que si funcione?.
Saludos
  • 0

#3 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 10:39

si eso kiero hacer en un edit caral gracias por todo
  • 0

#4 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 10:40

Hola
Pregunto:
Quieres escribir en un edit?. SI
Si no escribes nada que el boton no funcione y si escribes que si funcione?. SI ES ESO
Saludos


  • 0

#5 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 26 febrero 2010 - 10:57

Una forma sencilla sería poniendo inicialmente la propiedad Enabled del botón a false y luego escribir este código:


delphi
  1. procedure TForm1.Edit1Change(Sender: TObject);
  2. begin
  3.     Button1.Enabled:= (Edit1.Text <> '');
  4. end;



Cada vez que cambie el contenido del Text del Edit te activará el botón sólo si tiene algo escrito.

Saludos.
  • 0

#6 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 11:09

Una forma sencilla sería poniendo inicialmente la propiedad Enabled del botón a false y luego escribir este código:


delphi
  1. procedure TForm1.Edit1Change(Sender: TObject);
  2. begin
  3.     Button1.Enabled:= (Edit1.Text <> '');
  4. end;



Cada vez que cambie el contenido del Text del Edit te activará el botón sólo si tiene algo escrito.

Saludos.


no lo hace me borra los datos que tengo gracias
  • 0

#7 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 26 febrero 2010 - 11:28

Hola mariarosina1984,
El código de escanfandra funciona correctamente.
¿Podríamos ver lo que tienes hecho? Muy posiblemente el problema esté en otro lado.

Saludos,
PD: Te agradecería que no escribieras en mayúsculas. Pareciera que estuvieras gritando.
  • 0

#8 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4.107 mensajes
  • LocationMadrid - España

Escrito 26 febrero 2010 - 11:35

no lo hace me borra los datos que tengo gracias

El código de escanfandra funciona correctamente.


Cierto. Voy a subir un ejemplo, quizás le aclare algunas cosas.

Saudos.

Archivos adjuntos


  • 0

#9 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 26 febrero 2010 - 12:19

Hola
Bueno en que quedo la duda?.
Maria ayúdanos a entender tu problema.
Saludos
  • 0

#10 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 12:26

Hola
Bueno en que quedo la duda?.
Maria ayúdanos a entender tu problema.
Saludos

lo que kiero hacer es que cuando no escriba no haga nada en el buton de buscar que no haga la busqueda que se quede igual y desaparece todo cuando le doy buscar
  • 0

#11 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 26 febrero 2010 - 12:33

Hola
No entiendo muy bien, creo que el código de escafandra debería de funcionar pero, tal vez esta otra opción?.
En el codigo del boton pon esto al principio:


delphi
  1. begin
  2. if Edit1.Text <> ' ' then
  3. begin
  4. // aqui pones lo que necesites
  5. end
  6. else // si esta lleno entonces:......
  7. // lo que quieras hacer


Si el edit esta vacio se saltara lo que sigue.
Saludos
  • 0

#12 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 26 febrero 2010 - 12:33

lo que kiero hacer es que cuando no escriba no haga nada en el buton de buscar que no haga la busqueda que se quede igual y desaparece todo cuando le doy buscar


A ver, porque no estoy entendiendo, el código de escafandra es totalmente válido, a ver, cuando estes llenando la casilla ¿el botón se habilite o se aparezca? y si es en caso contrario ¿el botón se deshabilite o se esconda?, ¿cual de los casos es?.
  • 0

#13 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 12:58

no se preocupen ya esta casi resuelto


delphi
  1. procedure TForm3.Button1Click(Sender: TObject);
  2. begin
  3.     if edit1.Text <> ''  then
  4.     begin
  5.         query1.SQL.Text:='SELECT * FROM BLIBROS where (TITULO LIKE :ptit) or (AUTOR like :paut) or (TEMA_1 like :ptem1) or (TEMA_2 like :ptem2)';
  6.         query1.ParamByName('ptit').AsString:=('%'+edit1.Text+'%');
  7.         query1.ParamByName('paut').AsString:=('%'+edit1.Text+'%');
  8.         query1.ParamByName('ptem1').AsString:=('%'+edit1.Text+'%');
  9.         query1.ParamByName('ptem2').AsString:=('%'+edit1.Text+'%');
  10.         query1.Open;
  11.     end
  12.     else
  13.     begin
  14.  
  15.     end;
  16. end;



le pongo basio buscar la tabla se queda vacia como hago para que se kede igual la tabla cuando es en el contrareo?
  • 0

#14 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 26 febrero 2010 - 01:03

Hola
Que difícil nos lo pones Maria. :D
Recuerda que lo que estas haciendo es abrir una tabla con la sentencia SQL.
Al abrirla totalmente (*) puedes modificarla, sobre todo si tienes un dbnavigator.
Mira la modificación al código:


delphi
  1. procedure TForm3.Button1Click(Sender: TObject);
  2. begin
  3.     if edit1.Text <> ''  then
  4.     begin
  5.         query1.SQL.Text:='SELECT * FROM BLIBROS where (TITULO LIKE :ptit) or (AUTOR like :paut) or (TEMA_1 like :ptem1) or (TEMA_2 like :ptem2)';
  6.         query1.ParamByName('ptit').AsString:=('%'+edit1.Text+'%');
  7.         query1.ParamByName('paut').AsString:=('%'+edit1.Text+'%');
  8.         query1.ParamByName('ptem1').AsString:=('%'+edit1.Text+'%');
  9.         query1.ParamByName('ptem2').AsString:=('%'+edit1.Text+'%');
  10.         query1.Open;
  11.     end
  12.     else
  13.     begin
  14.       query1.Close; // el query estara inactivo
  15.     end;


Saludos
  • 0

#15 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 01:06

gracias caral por realizar este foro y poder ayudar gracias me encanto este foro soy la fan
  • 0

#16 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 26 febrero 2010 - 01:07

A ver, no me checa algo, si el botón está inhabilitado cuando el edit está vacío, no veo porque deban de validar que el edit esté vacío, el botón no te permitiría ejecutar el evento OnClick. ¿ Me estoy perdiendo de algo ? :s

Salud OS
  • 0

#17 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 01:09

si es eso pero ke kreen ya cuando le puse query1.close; no salen los datos desde que arranca salen vacios antes del if le puedo poner query1.open;?¿

  • 0

#18 Delphius

Delphius

    Advanced Member

  • Administrador
  • 6.295 mensajes
  • LocationArgentina

Escrito 26 febrero 2010 - 01:10

le pongo basio buscar la tabla se queda vacia como hago para que se kede igual la tabla cuando es en el contrareo?


Disculpa mariarosina1984 pero me cuesta entenderte.
Con el más y sincero respeto te pido que te tomes un tiempo para pensar y reordenar tus palabras.
No por ser breve se es puntual y preciso. Te digo que prefiero un texto de tres párrafos, bien detallista, elaborado con las debidas explicaciones y dudas que dos líneas que parecieran estar cifradas con el algoritmo Ks.

Por favor, explícate apropiadamente. No se termina de comprender lo que en verdad buscas. No te vamos a cobrar por la cantidad de palabras, ni por ofrecerte ayuda.

Tranquilízate. Intuyo que los nervios y la desesperación te están jugando en contra y no te dejan ver el árbol detrás del bosque.

Saludos,

  • 0

#19 mariarosina1984

mariarosina1984

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 215 mensajes

Escrito 26 febrero 2010 - 01:16

sinceramente lo que busco es hacer una busqueda pero quiero hacer la validacion de que si esta vacio ke no lo haga que se kede asi la tabla sin moverse no que sale VACIA CUANDO LE PICO sin escribir nada  eso kiero hacer
  • 0

#20 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.446 mensajes
  • LocationMéxico

Escrito 26 febrero 2010 - 01:24

Pues creo que ya lo tienes hecho eso, si el edit está vacío no hagas nada, solo agregaría un trim para quitar cualquier espacio que tuviese.




delphi
  1. procedure TForm3.Button1Click(Sender: TObject);
  2. begin
  3.   if trim(edit1.Text) <> ''  then 
  4.   begin
  5.     query1.close;
  6.     query1.SQL.Text:='SELECT * FROM BLIBROS where (TITULO LIKE :ptit) or (AUTOR like :paut) or (TEMA_1 like :ptem1) or (TEMA_2 like :ptem2)';
  7.     query1.ParamByName('ptit').AsString:=('%'+edit1.Text+'%');
  8.     query1.ParamByName('paut').AsString:=('%'+edit1.Text+'%');
  9.     query1.ParamByName('ptem1').AsString:=('%'+edit1.Text+'%');
  10.     query1.ParamByName('ptem2').AsString:=('%'+edit1.Text+'%');
  11.     query1.Open;
  12.   end;
  13. end;



Salud OS
  • 0




IP.Board spam blocked by CleanTalk.