FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Fuentes grandes
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Fuentes grandes
Posted: Fri Mar 03, 2006 07:52 AM

Hola:
Quiero que mis programas tomen automaticamente la fuente de Windows y el tamaño de fuente. Con GetSysFont() puedo recuperar la fuente del sistema, pero ¿ y el tamaño ? Lo puedo hacer a ojo preguntando por LargeFonts() pero me parece una chapuza. Ahora la fuente de mi app la defino así:
::oFont = TFont():New( GetSysFont(), 0, iif(LargeFonts(),-13,-10),, )
pero me gustaría que el tamaño de la fuente fuera la del sistema.

Luego está el tema de los controles pintados a mano que tienen fuente propia, como los TTabs. ¿ Alguien sabe cuales son todos los controles que definen su propia fuente ?

Saludos,
José Luis

Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Fuentes grandes
Posted: Fri Mar 03, 2006 07:54 AM

Olvide decir que si cambias las fuentes de tu sistema por fuentes grandes, la fuente del menú de la ventana principal se cambia automáticamente a fuente grande aunque tengas defina una fuente cualquiera en tu aplicación. ¿ De donde cogen los menús la fuente ?

Gracias de nuevo,

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Fuentes grandes
Posted: Fri Mar 03, 2006 09:04 AM

Jose Luis,

Posiblemente te sirva la función GetTextMetrics() del API.

Los menus no son sino un tipo especializado de ventana, por lo que podrás pedirles su fuente con WM_GETFONT y luego usar GetTextMetrics() también.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Fuentes grandes
Posted: Fri Mar 03, 2006 02:35 PM

¿ Y un poquito de código sería posible ?

Saludos,

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Fuentes grandes
Posted: Fri Mar 03, 2006 02:37 PM
Jose Luis,

La función GetTextMetrics() usa una estructura TEXTMETRIC que mira todo lo que contiene:
typedef struct tagTEXTMETRIC { // tm  
    LONG tmHeight; 
    LONG tmAscent; 
    LONG tmDescent; 
    LONG tmInternalLeading; 
    LONG tmExternalLeading; 
    LONG tmAveCharWidth; 
    LONG tmMaxCharWidth; 
    LONG tmWeight; 
    LONG tmOverhang; 
    LONG tmDigitizedAspectX; 
    LONG tmDigitizedAspectY; 
    BCHAR tmFirstChar; 
    BCHAR tmLastChar; 
    BCHAR tmDefaultChar; 
    BCHAR tmBreakChar; 
    BYTE tmItalic; 
    BYTE tmUnderlined; 
    BYTE tmStruckOut; 

    BYTE tmPitchAndFamily; 
    BYTE tmCharSet; 
} TEXTMETRIC;

habrá que ver que valor es el que necesitas de todos esos.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Fuentes grandes
Posted: Wed Mar 08, 2006 05:44 PM
Ya lo arreglé.

http://www.avemundi.com

Saludos,

Continue the discussion