Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-08-2005
newbery newbery is offline
Miembro
 
Registrado: jul 2005
Posts: 13
Poder: 0
newbery Va por buen camino
Question Como colocar texto en un TIMAGE

Holas a todos, necesito colocar texto en un TIMAGE como en el paint.
Hacer click donde quiero ponerlo y dejarme escribir en ese momento.
Muchas gracias, saludos.
Responder Con Cita
  #2  
Antiguo 04-08-2005
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.278
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
Para pintarlo por código, puedes hacerlo con un código similar a éste:
Código Delphi [-]
 var
   path:String;
 begin
   // Cargar la imagen
   path := IncludeTrailingBackslash(ExtractFilePath(Application.ExeName)) + 'Splash.BMP';
   Image1.Picture.LoadFromFile(path);  
   // Pintar texto
   Image1.Canvas.Font.Name := 'arial';
   Image1.Canvas.Font.Size := 40;
   Image1.Canvas.Font.Color := clWhite;
   Image1.Canvas.Brush.Style := bsClear;
   Image1.Canvas.TextOut(10, 10, 'Texto de prueba');

Si lo que quieres es que el usuario pueda escribirlo, yo lo que haría sería simularlo con un control mientras el usuario lo escribe (TEdit o similar) y cuando acabe, pones el control invisible y pintas el texto de ésta forma.
__________________
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
  #3  
Antiguo 04-08-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por Neftali
Código Delphi [-]
  path := IncludeTrailingBackslash(ExtractFilePath(Application.ExeName)) + 'Splash.BMP';
No es por ser puñetero (bueno, un poco sí que lo es) pero no dejaré decir un par de cosas respecto de la instrucción anterior, muy simples, en realidad no aportan nada, pero, ya digo que no es por ser puñetero...

La primera es que la función "IncludeTrailingBackSlash" en realidad llama a la función "IncludeTrailingPathDelimiter", y en el propio código (¿o era en la ayuda?) se dice que la segunda sustituye a la primera.

Ya ves tú. La segunda es que sobra el uso de la función susomentada, puesto que "ExtractFilePath" devuelve el camino ya con la barra invertida, por lo que "IncludeTrailingBackSlash", esto es, "IncludeTrailingPathDelimiter", en realidad no hace nada.

Por todo lo dicho podría quedar la instrucción como sigue:

Código Delphi [-]
   path := ExtractFilePath(Application.ExeName) + 'Splash.BMP';
Y si se me apura mucho y puesto a ser puñetero, pero, puñetero de verdad, diría que me gusta más algo como lo siguiente:

Código Delphi [-]
   path := ExtractFilePath(ParamStr(0)) + 'Splash.BMP';
Y esto es así como digo porque la clase "Application" se halla en la unidad "Forms", mientras que la función "ParamStr" se halla en la unidad "System", la cual todos sabéis se incluye "por defecto" por Delphi, sin que nosotros tengamos que añadirla. Y no digo más, que hasta lo dicho puede ser demás.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 05-08-2005
<Sergio> <Sergio> is offline
Miembro
 
Registrado: sep 2004
Posts: 72
Poder: 20
<Sergio> Va por buen camino
Nunca está demás mostrar la mejor forma de hacer las cosas, todo aporte es válido.
Responder Con Cita
  #5  
Antiguo 05-08-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por <Sergio>
Nunca está demás mostrar la mejor forma de hacer las cosas, todo aporte es válido.
Bueno, tampoco quería yo ir tan lejos, ¿eh?
__________________
David Esperalta
www.decsoftutils.com
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


La franja horaria es GMT +2. Ahora son las 22:32:48.


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