Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-12-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 14
mizzard Va por buen camino
Efecto button pulsado

Hola, utilizo el componente TButton y me gustaria saber si se puede hacer que cuando haga un simple clic, permanezca pulsado y que cuando pulse en otro boton, aparezca pulsado el nuevo y el anterior no

¿Sabeis como se puede hacer esto?

Muchas gracias y un saludo!
Responder Con Cita
  #2  
Antiguo 14-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por mizzard Ver Mensaje
Hola, utilizo el componente TButton y me gustaria saber si se puede hacer que cuando haga un simple clic, permanezca pulsado y que cuando pulse en otro boton, aparezca pulsado el nuevo y el anterior no
¿Sabeis como se puede hacer esto?
Hasta donde sé con TButton no es posible. Pero sí usando TSpeedButton y poniendo a todos los que desees en el mismo grupo, mediante la propiedad GroupIndex.

Sólo uno de los que tengan el mismo valor en la propiedad GroupIndex quedará pulsado hasta que se haga click sobre otro del mismo grupo.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 16-12-2011
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 14
mizzard Va por buen camino
mmmm, lo he probado y si que es lo que buscaba, pero... cachis... tambien necesitaria que tuviera las propiedades TabStop y TabOrder. Ya que uno de los objetivos es la agilidad en la manipulacion del programa usando teclado...
Responder Con Cita
  #4  
Antiguo 20-12-2011
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 mizzard Ver Mensaje
.. tambien necesitaria que tuviera las propiedades TabStop y TabOrder.
Hola mizzard, el TSpeedButton no tiene esas propiedades, para hacer lo que quieres también puedes utilizar Panels y sus propiedades BevelOuter y BevelInner, el codigo que haga lo que necesitas mas o menos sería así:

Dentro de un GroupBox o Panel, añades todos los panels que necesites y lo redimensionas del tamaño de tu botón.

Código Delphi [-]
//Variable global para guardar el ultimo Panel que ha sido presionado
Control : TPanel;

//En el evento OnEnter
procedure TForm1.Panel2Enter(Sender: TObject);
begin
 if Assigned(Control) then
  begin
   Control.BevelOuter:=bvNone;
   Control.BevelInner := bvRaised;
  end;

 TPanel(Sender).BevelInner := bvNone;
 TPanel(Sender).BevelOuter:=bvLowered;
 Control := TPanel(Sender);
end;

//En el evento OnMouseDown
procedure TForm1.Panel2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
 if Assigned(Control) then
  begin
   Control.BevelOuter:=bvNone;
   Control.BevelInner := bvRaised;
  end;

 TPanel(Sender).SetFocus;//aumentamos esta línea para que tome el foco
 TPanel(Sender).BevelInner := bvNone;
 TPanel(Sender).BevelOuter:=bvLowered;
 Control := TPanel(Sender);
end;

Y debes hacer que todos tus panels apunten al mismo evento, en este caso a los eventos OnEnter y OnMouseDown.

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
  #5  
Antiguo 08-01-2012
mizzard mizzard is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 100
Poder: 14
mizzard Va por buen camino
Perdon por la tardanza, gracias por la respuesta, en tener tiempo lo pruebo

Un abrazo!
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
mostrar form segun boton pulsado jsc OOP 1 11-08-2011 12:37:22
Saber item del menú pulsado José Luis Garcí Varios 2 29-03-2009 13:15:52
Saber cuando has pulsado Enter en un botón diego11 Varios 4 07-12-2007 17:08:07
como se si he pulsado un boton ercrizeporta Varios 11 03-04-2007 13:56:56
he pulsado el botón enviar?? valentine API de Windows 7 02-06-2004 17:21:54


La franja horaria es GMT +2. Ahora son las 04:04:16.


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