Cambio de fuente en un label

30/09/2007 - 02:55 por LuisVF | Informe spam
Tengo un UserForm con un label al cual, en tiempo de ejecución, le cambio la
fuente

Con una ScrollBar me desplazo y, llega un momento (en el label cambian
valores), donde pone la fuente por defecto y no sé como arreglarlo

Lo único que,remotamente, pensaba que me podía servir es la propiedad
DrawBuffer pero no parece cambiar nada

Alguna idea? Gracias por contestar

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
30/09/2007 - 08:22 | Informe spam
hola, Luis !

Tengo un UserForm con un label al cual, en tiempo de ejecucion, le cambio la fuente
Con una ScrollBar me desplazo y, llega un momento (en el label cambian valores)
donde pone la fuente por defecto y no se como arreglarlo
... pensaba que me podía servir... la propiedad DrawBuffer pero no parece cambiar nada
Alguna idea? ...



por los detalles que [NO] expones... no se *ve* alguna -posible- causa del regreso a la fuente estandar del control -???-

tendrias que revisar cualquier linea [y probablemente en cualquier codigo o evento]...
-> que pudiera estar administrando/modificando/... las propiedades de *ese* control -?-

saludos,
hector.
Respuesta Responder a este mensaje
#2 LuisVF
30/09/2007 - 18:28 | Informe spam
Hola Héctor

Hago esto:

Option Explicit

Private Sub btnAceptar_Click()
Unload UserForm2
End Sub

Private Sub cmbFuentes_Change()
Label1.Font.Name = cmbFuentes.Value
Debug.Print cmbFuentes.Value
End Sub

Private Sub UserForm_Initialize()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
With cmbFuentes
.AddItem "Arial"
.AddItem "Times New Roman"
.AddItem "Wingdings"
.AddItem "Webdings"
End With
End Sub

Private Sub ScrollBar1_Change()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
Debug.Print Chr(ScrollBar1.Value)
End Sub

ScrollBar1 tiene valores máx y mín: 255, 33

Label1 es donde se uestran los caracteres

Cuando selecciono Webdings, por ejemplo y (creo que siempre) paso de 127
cambia la fuente, a Tahoma creo.

Si vuelvo atrás con el scroolbar sigue con Tahoma hasta el caracter 64 y el
63 vuelve a poner Webdings

Debe ser que la función Chr no es la adecuada



"Héctor Miguel" escribió en el mensaje
news:
hola, Luis !

Tengo un UserForm con un label al cual, en tiempo de ejecucion, le cambio
la fuente
Con una ScrollBar me desplazo y, llega un momento (en el label cambian
valores)
donde pone la fuente por defecto y no se como arreglarlo
... pensaba que me podía servir... la propiedad DrawBuffer pero no parece
cambiar nada
Alguna idea? ...



por los detalles que [NO] expones... no se *ve* alguna -posible- causa del
regreso a la fuente estandar del control -???-

tendrias que revisar cualquier linea [y probablemente en cualquier codigo
o evento]...
-> que pudiera estar administrando/modificando/... las propiedades de
*ese* control -?-

saludos,
hector.

Respuesta Responder a este mensaje
#3 Héctor Miguel
01/10/2007 - 03:47 | Informe spam
hola, Luis !

ScrollBar1 tiene valores max y min: 255, 33
Label1 es donde se uestran los caracteres
Cuando selecciono Webdings, por ejemplo y (creo que siempre) paso de 127 cambia la fuente, a Tahoma creo.
Si vuelvo atras con el scroolbar sigue con Tahoma hasta el caracter 64 y el 63 vuelve a poner Webdings
Debe ser que la funcion Chr no es la adecuada



lo unico que note, es que las etiquetas no se actualizan al cambiar la seleccion en el combo [hasta mover el scrollbar] :-((
usando un procedimiento general [mismo modulo] puedes llamarlo para actualizar segun ocurran cambios [combo o scrollbar]
la fuente Tahoma solo se me ha mostrado al lanzar el formulario [y en tanto no cambie seleccion en el combo] ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

este es el codigo que probe:

Private Sub UserForm_Initialize()
With cmbFuentes
.AddItem "Arial"
.AddItem "Times New Roman"
.AddItem "Wingdings"
.AddItem "Webdings"
End With
Actualiza_Etiquetas
End Sub
Private Sub btnAceptar_Click()
Unload Me
End Sub
Private Sub cmbFuentes_Change()
Label1.Font.Name = cmbFuentes
Actualiza_Etiquetas
End Sub
Private Sub ScrollBar1_Change()
Actualiza_Etiquetas
End Sub
Private Sub Actualiza_Etiquetas()
Label1.Caption = Chr(ScrollBar1)
Label2.Caption = ScrollBar1
Label3.Caption = Label1.Font.Name
End Sub

__ el codigo expuesto __
Option Explicit
Private Sub btnAceptar_Click()
Unload UserForm2
End Sub
Private Sub cmbFuentes_Change()
Label1.Font.Name = cmbFuentes.Value
Debug.Print cmbFuentes.Value
End Sub
Private Sub UserForm_Initialize()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
With cmbFuentes
.AddItem "Arial"
.AddItem "Times New Roman"
.AddItem "Wingdings"
.AddItem "Webdings"
End With
End Sub
Private Sub ScrollBar1_Change()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
Debug.Print Chr(ScrollBar1.Value)
End Sub
Respuesta Responder a este mensaje
#4 LuisVF
02/10/2007 - 20:51 | Informe spam
"...lo que he encontrado es un caso de *fuente irrecuperable* para el caso
de fuentes *simbolicas*
..."

Bueno, por lo menos no sólo me pasa a mi. No tenía muy claro como actualizar
el label al cambiar la fuente.Gracias, me llega con esto.


"Héctor Miguel" escribió en el mensaje
news:
hola, Luis !

... lo que me hace es que al llegar a128 en adelante ya no pone la fuente
Webdings
(en la imagen deberia salir un se#or de esos que estan en las puertas de
los ba#os)
Adjunto formulario/imagen por si a alguien se le ocurre algo [...]



lo que he encontrado es un caso de *fuente irrecuperable* para el caso de
fuentes *simbolicas*
- si al control Label1 le estableces una fuente [p.e. Wingdings] desde el
tiempo de dise#o...
sera la fuente predominante... hasta en tanto la cambies en tiempo de
ejecucion...
[luego de lo cual, no hay forma de volver a mostrar fuentes *simbolicas*
en el control Label1] :-((

prepara una hoja *limpia* para modificarla durante la ejecucion del
formulario +/- como sigue:
- [A1:E1] escribe los nombres de las fuentes que se *administran* por el
formulaio [adjunto tambien]
-> Arial, Tahoma, Times New Roman, Wingdings y Webdings
- [A2] escribe un signo de interrogacion "?"
- [B2:E2] vincula cada celda a A1 con la formula: ¡
- [A2:E2] -> aplicale una fuente a cada celda segun la fuente indicada en
la fila 1
-> servira para *ver* el caracter puesto en A1 con el tipo de fuente de
cada titulo :))

corre el formulario adjunto, el control Label1 tiene establecida en tiempo
de dise#o la fuente Wingdings
- en tanto SOLO recorras el ScrollBar1, veras cambiar el caracter
coincidiendo con la celda Wingdings
PERO... en cuanto modifiques la seleccion en el cmbFuentes... veras
que... en tiempo de ejecucion:
-> no hay forma de volver a *ver* fuentes *simbolicas* [Symbol,
Wingdings, Webdings, etc.] :-((

si *realmente* es necesario mostrar fuentes *simbolicas* [en tiempo de
ejecucion], creo que...
lo mejor sera tener preparado un control con *el tipo* de fuente que
necesites, y *jugar* con la propiedad .Visible -?-

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.


Respuesta Responder a este mensaje
#5 ST
03/10/2007 - 16:34 | Informe spam
On 2 oct, 13:51, "LuisVF" wrote:
"...lo que he encontrado es un caso de *fuente irrecuperable* para el caso
de fuentes *simbolicas*
..."

Bueno, por lo menos no sólo me pasa a mi. No tenía muy claro como actualizar
el label al cambiar la fuente.Gracias, me llega con esto.

"Héctor Miguel" escribió en el mensajenews:



> hola, Luis !

>> ... lo que me hace es que al llegar a128 en adelante ya no pone la fuente
>> Webdings
>> (en la imagen deberia salir un se#or de esos que estan en las puertas de
>> los ba#os)
>> Adjunto formulario/imagen por si a alguien se le ocurre algo [...]

> lo que he encontrado es un caso de *fuente irrecuperable* para el caso de
> fuentes *simbolicas*
> - si al control Label1 le estableces una fuente [p.e. Wingdings] desde el
> tiempo de dise#o...
> sera la fuente predominante... hasta en tanto la cambies en tiempo de
> ejecucion...
> [luego de lo cual, no hay forma de volver a mostrar fuentes *simbolicas*
> en el control Label1] :-((

> prepara una hoja *limpia* para modificarla durante la ejecucion del
> formulario +/- como sigue:
> - [A1:E1] escribe los nombres de las fuentes que se *administran* por el
> formulaio [adjunto tambien]
> -> Arial, Tahoma, Times New Roman, Wingdings y Webdings
> - [A2] escribe un signo de interrogacion "?"
> - [B2:E2] vincula cada celda a A1 con la formula: ¡
> - [A2:E2] -> aplicale una fuente a cada celda segun la fuente indicada en
> la fila 1
> -> servira para *ver* el caracter puesto en A1 con el tipo de fuente de
> cada titulo :))

> corre el formulario adjunto, el control Label1 tiene establecida en tiempo
> de dise#o la fuente Wingdings
> - en tanto SOLO recorras el ScrollBar1, veras cambiar el caracter
> coincidiendo con la celda Wingdings
> PERO... en cuanto modifiques la seleccion en el cmbFuentes... veras
> que... en tiempo de ejecucion:
> -> no hay forma de volver a *ver* fuentes *simbolicas* [Symbol,
> Wingdings, Webdings, etc.] :-((

> si *realmente* es necesario mostrar fuentes *simbolicas* [en tiempo de
> ejecucion], creo que...
> lo mejor sera tener preparado un control con *el tipo* de fuente que
> necesites, y *jugar* con la propiedad .Visible -?-

> si cualquier duda [o informacion adicional]... comentas ?
> saludos,
> hector.- Ocultar texto de la cita -

- Mostrar texto de la cita -



hola chicos:
disculpen pero estoy intentando encontrar/reproducir el mismo efecto-
problema,pero no lologro,o serà que no entendi bien el asunto:
se supone que a partir de 127-128 la fuente ydeberia regresarse a la
predeterminada (Tahoma) ¡¡??
pues a mi no me sucede tal cosa ya que cambio a 'Wingdings' o
'Webdings' y me respeta estos tipos de fuente,incluyendo el arial y
times new roman,el codigo es practicamente el mismo:

Option Explicit


Private Sub btnAceptar_Click()
Unload UserForm2
End Sub


Private Sub cmbFuentes_Change()
'Label1.Font.Name = cmbFuentes.Value
Label1.Font = cmbFuentes.Value
Label2.Font = cmbFuentes.Value
Label3.Font = cmbFuentes.Value
Label3.Caption = cmbFuentes.Value
'Debug.Print cmbFuentes.Value
End Sub


Private Sub UserForm_Initialize()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
With cmbFuentes
.AddItem "Arial"
.AddItem "Times New Roman"
.AddItem "Wingdings"
.AddItem "Webdings"
End With
End Sub


Private Sub ScrollBar1_Change()
Label1.Caption = Chr(ScrollBar1.Value)
Label2.Caption = ScrollBar1.Value
Label3.Caption = Label1.Font.Name
'Debug.Print Chr(ScrollBar1.Value)
End Sub
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida