Page 1 of 1

Cambiar Tipo de letra y color

PostPosted: Sat Jul 12, 2008 10:40 pm
by Willi Quintana
Hola amigos,,
en esta sentencia, como cambio el tipo de Font en ejecucion? ChooseFont() devuelve un array de datos

Salu2

DEFINE FONT oFont1 NAME "Arial" BOLD SIZE 20,38
...
..
.
REDEFINE SAY oNom
VAR cNom
FONT oFont1
COLOR CLR_RED
ID 101 OF oDlg
....
...
..

PostPosted: Mon Jul 14, 2008 10:13 pm
by Willi Quintana
Yo mismo me respondo (nadie cambia fonts en ejecucion??)
Salu2

REDEFINE SAY oTitle VAR cTitle FONT oFont ID 101 OF oDlg
.....
REDEFINE BUTTON oCam ;
ACTION CambiarFont(oTitle)
....



FUNCTION CambiarFont(oObjSay)
local aTFont, oFont

aTFont := {}
aTFont := CHOOSEFONT()
oFont := BUILDFONT( aTFont )
oObjSay:SetFont(oFont)
oObjSay:Refresh()
Return(Nil)

PostPosted: Mon Jul 14, 2008 10:16 pm
by Willi Quintana
Ups,,, falto algo

FUNCTION BUILDFONT( aFont )

IF EMPTY( aFont[ LF_FACENAME ] )
RETURN NIL
ENDIF

RETURN TFont():New( aFont[ LF_FACENAME ],;
,;
aFont[ LF_HEIGHT ],;
.f.,;
!( aFont[ LF_WEIGHT ] == FW_NORMAL ),;
aFont[ LF_ESCAPEMENT ],;
aFont[ LF_ORIENTATION ],;
aFont[ LF_WEIGHT ],;
aFont[ LF_ITALIC ],;
aFont[ LF_UNDERLINE ],;
aFont[ LF_STRIKEOUT ],;
aFont[ LF_CHARSET ],;
aFont[ LF_OUTPRECISION ],;
aFont[ LF_CLIPPRECISION ],;
aFont[ LF_QUALITY ],;
,;
aFont[ LF_PITCHANDFAMILY ] )