Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Tamaños, Letras, Caos!!!

Estas en el tema de Tamaños, Letras, Caos!!! en el foro de Visual Basic clásico en Foros del Web. Para el mismo tamaño de fuente, tienen todos los caracteres el mismo ancho? Estoy intentando ajustar un control en función del texto que contiene pero ...
  #1 (permalink)  
Antiguo 01/09/2005, 10:49
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 19 años, 7 meses
Puntos: 2
Tamaños, Letras, Caos!!!

Para el mismo tamaño de fuente, tienen todos los caracteres el mismo ancho? Estoy intentando ajustar un control en función del texto que contiene pero dependiendo de que letras pongo no me valen los ajustes... Necesito alguien que me diga como se puede calcular el ancho de las letras malditas! XD
  #2 (permalink)  
Antiguo 01/09/2005, 12:20
Avatar de aldo1982  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Fe (Argentina) Colon F.C
Mensajes: 1.362
Antigüedad: 19 años, 5 meses
Puntos: 6
nose ke es bien lo ke keres hacer, pero yo para trabajar con fuentes uso el commonddialog
salu2
__________________
LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA
  #3 (permalink)  
Antiguo 01/09/2005, 15:28
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 19 años, 7 meses
Puntos: 2
Es complicado. Pero no es el Tamaño de fuente lo que quiero.
Lo que quiero es una rutina que dado un caracter y todos los datos de Font (tamaño, negrita, etc...) saber el tamaño en pantalla (pixels), he probado con una constante multiplicada por el tamaño de fuente pero no me da, porque se ve que hay fuentes que el ancho no es fijo, es decir que unas letras necesitan más espacio que otras. La finalidad es aplicarlo a un control que estoy haciendo para simular una barra con roll en la que se van añadiendo elementos de manera dinamica.
Imagino que tendré que meter mano a la API, seguramente en gdi32 pero no he trabajado mucho con la API y no tengo tiempo para aprender XD
  #4 (permalink)  
Antiguo 01/09/2005, 18:43
 
Fecha de Ingreso: junio-2003
Mensajes: 111
Antigüedad: 20 años, 10 meses
Puntos: 0
Hola:
Creo que podes usar la siguiente propiedad:
TextWidth(Text1) ' Calcula el largo de la cadena de caracteres en este caso el Text1).

TextHeight(Text1) / 2 ' Calcula el alto

Toma en cuenta el tamaño y tipo de fuente.
Saludos
  #5 (permalink)  
Antiguo 02/09/2005, 00:51
 
Fecha de Ingreso: agosto-2004
Mensajes: 62
Antigüedad: 19 años, 7 meses
Puntos: 2
Si como parámetro se le pasa un String no va a poder tener en cuenta el tipo de fuente y tamaño... No sé como hará el cálculo pero no sale.
Al final he conseguido hacer lo que quería, la solución:
Utilizar un control que me sirva para medir, es decir un Label con la propiedad autosize a true.
Hay que colocar un control que no sirve de nada pero bueno... Al menos funciona
PD: Antes de medir hay que poner la misma fuente que la del texto que queremos medir en el label.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:18.