Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-07-2021
Esteban74 Esteban74 is offline
Miembro
 
Registrado: jun 2020
Posts: 12
Poder: 0
Esteban74 Va por buen camino
Ajuste de fuentes segun espacio del contenedor

Hola, se me presenta una situación en la que un TLabel debe mostrar una información pero con WordWrap en False y autoSize en True , el problema es que en un dispositivo android el texto de dicho label es mas largo que su ancho (Width), por lo que busco reducir el tamaño de la fuente en forma dinámica para que se visualice correctamente, implemento algo así pero me entra en bucle infinito:

Código Delphi [-]
procedure TfrmPrincipal.labRecuperaDatosPaint(Sender: TObject; Canvas: TCanvas;
  const ARect: TRectF);
begin
 while Canvas.TextWidth((sender as TLabel).Text) >= (sender as TLabel).Width do
  (sender as TLabel).Font.Size := (sender as TLabel).Font.Size - 1;
end;

No se si estoy cometiendo un error de sintaxis o mi enfoque para resolver el problema no es el correcto, si alguien paso por esto antes agradecería su ayuda. Gracias por su tiempo.
Responder Con Cita
  #2  
Antiguo 13-07-2021
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.549
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
Si conoces el espacio disponible, creo recordar que a partir del Canvas puedes saber el tamaño que ocupa un texto concreto, con las propiedades actuales de fuente (de ese Canvas).
Se trataría de ir reduciendo la fuente, hasta conseguir que el tamaño obtenido sea menor que el disponible.

Revisa:
http://docwiki.embarcadero.com/Libra...nvas.TextWidth
__________________
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
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
Nuevo contenedor de basura Casimiro Notevi La Taberna 5 08-10-2013 13:56:18
imprimir ajuste pagina anubis Impresión 3 24-01-2010 21:20:58
Necesito un contenedor transparente Anunakis Gráficos 4 02-06-2008 04:17:36
Ajuste de componentes tarco35 Gráficos 0 07-11-2006 23:09:46


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


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