Estoy haciendo un ejemplo con contenedores y me gustaría que según voy cambiado el tamaño del formulario,
la fuente de letra de los botones se incrementase o decrementasen.
Este es el formulario en modo diseño:
Está es su jerarquía:
En una primera ejecución se muestra esto:
El código es este:
Public Struct dimensiones
alto As Integer
ancho As Integer
End Struct
Private dimformulario As New Dimensiones
Private dimboton As New Dimensiones
Public Sub Form_Resize()
Dim proancho, propalto As Float
Dim unboton As Object
With dimformulario
.ancho = Me.Width
.alto = Me.Height
End With
With dimboton
.ancho = Button1.Width
.alto = Button1.Height
End With
proancho = dimformulario.ancho / dimboton.ancho
propalto = dimformulario.alto / dimboton.alto
For Each unboton In Me.Controls
If unboton Is Button Then
unboton.Font.Size = proancho * propalto
Print unboton.Font.Size
Endif
Next
End
alto As Integer
ancho As Integer
End Struct
Private dimformulario As New Dimensiones
Private dimboton As New Dimensiones
Public Sub Form_Resize()
Dim proancho, propalto As Float
Dim unboton As Object
With dimformulario
.ancho = Me.Width
.alto = Me.Height
End With
With dimboton
.ancho = Button1.Width
.alto = Button1.Height
End With
proancho = dimformulario.ancho / dimboton.ancho
propalto = dimformulario.alto / dimboton.alto
For Each unboton In Me.Controls
If unboton Is Button Then
unboton.Font.Size = proancho * propalto
Print unboton.Font.Size
Endif
Next
End
Realmente la fuente de letra va a depender solo del tamaño de un botón, no del formulario.
Sabemos que el tamaño de cada botón dependerá de lo grande o pequeño que sea el formulario.
He hecho el calculo de una proporción, pero me da casi siempre 9...algo hice mal.
Esa proporción parece mantenerse casi constante.
Os subo el código para que lo probéis.
Yo tomo el tamaño de la fuente como un rectángulo. Pero veo que la clase fuente tiene mas cosas para manejar el tamaño.
Tenemos la propiedad Size, pero tambien existe Grade que devuelve el tamaño relativo de la fuente de letra.
Luego existe la propiedad Scalable, si es que la fuente lo dispone.
¿ Tenéis idea de qué debería cambiar ?.
Saludos
ProporcionTamFuente.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | ProporcionTamFuente.tar.gz | |
Tamaño: | 12.92 KB | |
Descargado: | 62 veces |
ProporcionTamFuente.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | ProporcionTamFuente.tar.gz | |
Tamaño: | 12.92 KB | |
Descargado: | 62 veces |
ProporcionTamFuente.tar.gz | ||
Descripción: | Descargar |
|
Nombre del archivo: | ProporcionTamFuente.tar.gz | |
Tamaño: | 12.92 KB | |
Descargado: | 62 veces |