Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
gracias me estas ayudando mucho.

este control donde lo pongo, lo he puesto en initialization pero me da error en el componente FindComponent
la verdad es que tambien me puede servir para cambiar el shape que he puesto al poner h101 se puede poner en vez de h101.brush.color tshape.brush.color?

gracias de nuevo asi da gusto aprender.

Código Delphi [-]
var
  comp:Tcomponent;
begin
  comp := FindComponent('L' + Sender.Name);
  // esto te daría que la variable comp está apuntando al compoenente Lh101, Lh102,...
  // dependiendo si has pulsado sobre la label h101, h102,...
Responder Con Cita
  #2  
Antiguo 12-04-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.438
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
El h101, h101 son Shapes...
Entonces quedaría así:

Código Delphi [-]
procedure Tfentrada.Lh101Click(Sender: TObject);
var 
  habita:integer;
  comp:TShape
  lbl:TLabel;
  nom:String;
begin

  // Acceder al label
  lbl := TLabel(Sender);
  // Acceder al pabel relacionado con ese label
  nom := copy(lbl.Name, 2, Length(lbl.Name));
  // Con esto si el label es el lh101 nom valdrá h101, 
  // buscamos el shape con ese nombre
  comp := TShape(FindComponent(nom));



  habita:= comp.Brush.Color;

  if habita = clYellow  then begin
      habita:=clRed;
      comp.Brush.color:=habita;
      lbl.Font.Color:=clYellow
      end
  else
      begin
      habita:=clYellow;
     lbl.Font.Color:=clBlack;
      comp.Brush.color:=habita
      end
end;

Te he puesto el código de memoria, pero debe funcionar, salvo que haya cometido algun error de sintaxis. Lo más importante es que lo entiendas.
Ahora puedes hacer que todos los labels apunten a este OnClick; Si pulsas sobre lh101 funcionará con esa label y con el shape h101, si pulsas lh102 y el shape h102, y así sucesivamente...

AÑADO: Una vez que funcione, faltarían las comprobaciones de posibles errores en el FindComponent, y el los CAST.

Un saludo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 12-04-2007 a las 12:42:43.
Responder Con Cita
  #3  
Antiguo 12-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
gracias de nuevo. Error no da, pero sigue funcinando solo para el lh101, no habria que poner algo en algun otro sitio para que capturara el evento de cualquier label? porque solo ejecuta la procedure solo si se pulsa la lh101 para otras no entra.
Responder Con Cita
  #4  
Antiguo 13-04-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.438
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por anubis
gracias de nuevo. Error no da, pero sigue funcinando solo para el lh101, no habria que poner algo en algun otro sitio para que capturara el evento de cualquier label? porque solo ejecuta la procedure solo si se pulsa la lh101 para otras no entra.
En el OnClick del resto de label debes apuntar a este mismo evento.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 13-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
si, gracias, ya seleccione todos los label y les apunte para esa procedure, muchas gracias, funciono.
Una ultima cosa rapida, si quiero que el nom resultante de la procedure lo pueda visualizar con el dato almacenado en el form que aparece al pulsar el label, como se puede hacer, porque lo intente declarar como public y no me deja.

gracias de nuevo
Responder Con Cita
  #6  
Antiguo 13-04-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.438
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En ese mismo procedimiento puedes acceder a todo el form:

Código Delphi [-]
  ...
  // esto debería modificar el título del form, por ejemplo...
  Self.Caption := nom;
  ...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 13-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 20
anubis Va por buen camino
perdon, me referia a visualizarlo en otro form, poder usar las variables y su contenido en otros forms.

gracias por las molestias
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Crear un Shape en Runtime David78 Gráficos 4 28-04-2010 22:03:54
mover linea en delphi (move shape) Migueltdf Gráficos 0 23-08-2006 02:50:10
Rotar Shape dicatek Gráficos 3 18-07-2006 23:33:37
Shape en DetailBand TONIAM Impresión 1 25-10-2005 17:59:24
Se puede pintar en un Shape? k2k2k2 Gráficos 4 13-01-2005 11:56:49


La franja horaria es GMT +2. Ahora son las 22:46:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi