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 29-02-2012
Jusar Jusar is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 17
Poder: 0
Jusar Va por buen camino
Consulta

Como puedo cocatenar varios label para agregarles informacion sin tener que hacerlo uno por uno. Ejm label1=1, label2=2 y asi consecutivamente... Saludos desde Costa Rica...
Responder Con Cita
  #2  
Antiguo 29-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.
Responder Con Cita
  #3  
Antiguo 01-03-2012
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
Hola jusar.

Código:
void __fastcall TForm1::NumerarClick(TObject *Sender)
{
  for(int i=0;i < ComponentCount; i++)
    if(Components[i]->ClassNameIs("TLabel")){
      TLabel *L = static_cast<TLabel*>(Components[i]);
       L->Caption = L->Name[L->Name.Length()];
   }
}
Saludos.

Edito: El código funciona siempre y cuando el último caracter de la propiedad Name de los TLabel sean los números consecutivos, como solicitas en tu mensaje:
Cita:
Ejm label1=1, label2=2 y asi consecutivamente...
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 01-03-2012 a las 04:54:23.
Responder Con Cita
  #4  
Antiguo 01-03-2012
Jusar Jusar is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 17
Poder: 0
Jusar Va por buen camino
Question

Osea pero como haria para no tener que realizarlo uno por uno como utilizando un for que me recorralas los label y me agrege informacion.

Ej:
for (int i=0;i<4;i++)
label+"i"="hola";

algo asi verdad ipoteticamente es simplente saber si puede concatenar el nombre de los label con las caracteres....
Responder Con Cita
  #5  
Antiguo 01-03-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Recuerda usar etiquetas cuando pongas código, ejemplo:




.
Responder Con Cita
  #6  
Antiguo 01-03-2012
Jusar Jusar is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 17
Poder: 0
Jusar Va por buen camino
Disculpa apenas me vengo adaptando al foro

como puedo concatenar varios label para agregarles informacion... en modo de funcion utilizando un for es q la de arriba no me quedo muy clara...
Responder Con Cita
  #7  
Antiguo 01-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
En delphi teniendo en cuenta tres label:

Código Delphi [-]
var
  i :Integer;
  comp:TComponent;
begin
  for i := 1 to 3 do begin
   comp := FindComponent('Label' + IntToStr(i));
   TLabel(comp).Caption:= IntToStr(0 + i);
  end;

Saludos
__________________
Siempre Novato
Responder Con Cita
  #8  
Antiguo 01-03-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Lo que Caral quiere decir es algo como esto:
Código:
  TLabel *Label;
  for(int i = 1; i<ComponentCount; i++){
    Label = static_cast<TLabel*>(FindComponent("Label" + IntToStr(i)));
    if(Label) Label->Caption = IntToStr(i);
  }

Saludos.
Responder Con Cita
  #9  
Antiguo 01-03-2012
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 Jusar Ver Mensaje
Osea pero como haria para no tener que realizarlo uno por uno como utilizando un for que me recorralas los label y me agrege informacion.

Ej:
for (int i=0;i<4;i++)
label+"i"="hola";

algo asi verdad ipoteticamente es simplente saber si puede concatenar el nombre de los label con las caracteres....
Hola.

Todos los ejemplos que te pusieron hacen la taréa que deseas: Encontrar en el form los componentes de tipo TLabel para luego operar con ellos.

Si lo que buscas es cambiar el nombre del componente, tendrás que trabajar sobre la propiedad Name de los Labels y si querés cambiar lo que visualiza tendrás que trabajar sobre la propiedad Caption.

Ejemplo:
Código:
  Label->Name = "Hola" + IntToStr(i); // cambia propiedad Name
  Label->Caption = "Hola" + IntoStr(i); // cambia propiedad Caption
Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 02-03-2012
Jusar Jusar is offline
Miembro
NULL
 
Registrado: feb 2012
Posts: 17
Poder: 0
Jusar Va por buen camino
Aqui otra vez yo de nuevo me podrian explicar en que consiste el ComponentCount y el FindComponent se le agradeceria ya lo heche andar y me funciono a la perfeccion...
Responder Con Cita
  #11  
Antiguo 02-03-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
..
Cita:
Empezado por Ayude de Builder
TComponent::ComponentCount

ndicates the number of components owned by the component.

__property int ComponentCount = {read=GetComponentCount, nodefault};

Description

Use ComponentCount to find or verify the number of components owned by a component, or when iterating through the Components list to perform some action on all owned components. ComponentCount is used internally for such iterative procedures.

Note: The ComponentCount of a component contains the same number of items as in the Components list for that component.

Cita:
Empezado por Ayuda de Builder
TComponent::FindComponent

Indicates whether a given component is owned by the component.

TComponent* __fastcall FindComponent(const AnsiString AName);

Description

FindComponent returns the component in the Components property array with the name that matches the string in the AName parameter. Use FindComponent to determine whether a given component is owned by another.

FindComponent is not case sensitive.
Saludos.
Responder Con Cita
  #12  
Antiguo 07-03-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Poder: 16
lmpadron Va por buen camino
La duda de uno puede ser la duda de varios !!!, así que me uno al agradecimiento porque es uno de las tantas cosas que si hubiese sabido hacer habría escrito mucho menos. Gracias !!!
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________
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
consulta sobre una consulta :D PablorD MySQL 4 02-06-2010 21:59:51
Realizar una consulta sobre los registros que devuelve otra consulta Borjaserrano Firebird e Interbase 12 01-10-2007 23:19:44
Consulta dentro de otra consulta judit25 Conexión con bases de datos 1 25-06-2007 15:52:15
consulta sobre consulta superhopi SQL 2 16-05-2003 19:01:47


La franja horaria es GMT +2. Ahora son las 21:49:28.


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