Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
grafico dentro de un componente

La verdad no se si la pregunta corresponde a este foro o al de gráficos pero pruebo por acá.

Estoy diseñando un componente que utilizará en su canvas un pequeño gráfico (siempre el mismo). El tema es que como siempre que se use será el mismo y nunca otro, me gustaría que estuviera dentro del código, no como una de las propiedades de tipo TPicture que tenga que llenar el usuario con el gráfico cada vez que lo pone. Sino que solo exista el componente y cuando el usuario lo arroje sobre el form ya le aparezca con el gráfico.

Si veo en un form como texto, los gráficos aparecen como :
Picture.Data = {...} donde dentro de las llaves aparece un código que no me interesa escudriñar.

Lo que quisiera hacer es algo parecido pero dentro del código del componente. Asignar los valores de un .bmp a una constante y usarla donde sea necesario. ¿Es esto posible?
Responder Con Cita
  #2  
Antiguo 23-01-2006
Avatar de Jonnathan
Jonnathan Jonnathan is offline
Miembro
 
Registrado: may 2005
Ubicación: Isla de Margarita, Venezuela
Posts: 64
Poder: 19
Jonnathan Va por buen camino
No soy un maestro en esto de crear componentes pero se me ocurre que puedes meter una imagen en un archivo de recursos (*.res) y en el evento "Create" del componente lees la imagen de ese archivo de recursos con "LoadFromResourceName".
1.-Creas un resource file con Image Editor que trae delphi, añades una imagen y le pones un nombre. Guardas tu archivo .RES en la misma carpeta del componente.
2.-Declara una variable FMiImage de tipo TBipmap en la clausula Private del componente.
3.-Añade una linea con la directiva {$R *.res} para que te compile con tu archivo .RES.
3.-Pones esto en el constructor Create

Código Delphi [-]
...
FMiImage := TBitmap.Create();
FMiImage.LoadFromResourceName(HInstance, 'Nombre_De_Mi_Image_En_Archivo_RES');
Canvas.Draw(0,0,FMiImage);
FMiImage.Free;
...

Prueba y me dices que tal te fué, saludos.
__________________
"En el siglo de la estupidez todas las casas comienzan por la fachada" (Fuckowsky)
Planeta Insólito, La Pluma Inspirada

Última edición por Jonnathan fecha: 23-01-2006 a las 07:24:26.
Responder Con Cita
  #3  
Antiguo 23-01-2006
Avatar de eliash
eliash eliash is offline
Miembro
 
Registrado: nov 2005
Ubicación: Galicia, España
Posts: 38
Poder: 0
eliash Va por buen camino
Y con el TImageList, en la pestaña "Win32"??
Responder Con Cita
  #4  
Antiguo 23-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
Gracias, probaré así. Pero de todos modos no deja de ser un archivo externo con el gráfico que debería ser entregado con el componente. Es decir que no es posible que el código del componente incluya el gráfico.

No entiendo como la clase TImage tiene una propiedad en Picture que no puede ser utilizada en código. Porqué si en el archivo .frm se puede, en el código no puedo ponér algo como :

Código Delphi [-]
var
  Picture1.TPicture;
   
begin
  Picture1.Data := {............};
end;
Responder Con Cita
  #5  
Antiguo 23-01-2006
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: 18.286
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
Creo que lo corrrecto es que utilices un archivo de recursos como ya te han comentado.
Justamente están para estos menesteres.
__________________
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
  #6  
Antiguo 23-01-2006
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
Cita:
Empezado por elcigarra
Pero de todos modos no deja de ser un archivo externo
Sí deja de serlo al momento de compilar.

// Saludos
Responder Con Cita
  #7  
Antiguo 23-01-2006
elcigarra elcigarra is offline
Miembro
 
Registrado: may 2005
Posts: 269
Poder: 19
elcigarra Va por buen camino
Todo bien... que sea así, entonces
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
problemas con threads dentro de un componente elcigarra OOP 26 26-05-2005 04:29:35
Busco un componente cuyas caracteristicas os detallo dentro David Varios 2 14-03-2005 22:05:14
Crear un Componente TScrollbox con botones dentro CORBATIN OOP 15 06-05-2004 22:48:37
Un componente dentro de otro. Tonio OOP 9 11-11-2003 23:44:12
Variable del tipo TFieldDefs dentro de un componente Angel OOP 0 02-07-2003 09:32:16


La franja horaria es GMT +2. Ahora son las 17:04: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