Schriftart, -Farbe ändern



  • hallo zusammen, folgendes habe ich gefunden, was auch funktioniert...

    CWnd* wnd=GetDlgItem(IDC_Static);
    Logfont lf;
    wnd->GetFont()->GetLogFont(&lf);
    lf.lfWeight=FW_BOLD;            //Fett machen
    lf.lfHeight=16;                 //Größe verändern
    lf.lfUnderline=true;            //Unterstreichen
    
    static CFont myFont;
    myFont.CreateFontIndirect(%lf);
    wnd->SetFont(&myFont);
    

    meine Fragen:
    1.) FW_BOLD für fett, aber was für kursiv???
    2.) kann ich hier auch einfach den Schrifttyp ändern???
    3.) kann ich hier auch einfach die Schriftfarbe ändern???

    habe leider keinen passende Sachen in der Suche gefunden

    thx



  • Schau doch einfach mal in der MSDN nach !!!
    Ich gehe davon aus wenn Du schreiben kannst das Du auch lesen kannst ... 🤡



  • sry, sitze an einem anderen pc, keine MSDN.
    weisst du link auswendig...
    ich weiss, da kam heute schon mal sowas, aber während ich den link suche, kannst du ihn mir vielleicht nennen?



  • BOOL CreatePointFont( int nPointSize, LPCTSTR lpszFaceName, CDC* pDC = NULL );

    Return Value

    Nonzero if successful, otherwise 0.

    Parameters

    nPointSize

    Requested font height in tenths of a point. (For instance, pass 120 to request a 12-point font.)

    lpszFaceName

    A CString or pointer to a null-terminated string that specifies the typeface name of the font. The length of this string must not exceed 30 characters. The Windows EnumFontFamilies function can be used to enumerate all currently available fonts. If lpszFaceName is NULL, the GDI uses a device-independent typeface.

    pDC

    Pointer to the CDC object to be used to convert the height in nPointSize to logical units. If NULL, a screen device context is used for the conversion.

    Remarks



  • typedef struct tagLOGFONT { // lf
    LONG lfHeight;
    LONG lfWidth;
    LONG lfEscapement;
    LONG lfOrientation;
    LONG lfWeight;
    BYTE lfItalic;
    BYTE lfUnderline;
    BYTE lfStrikeOut;
    BYTE lfCharSet;
    BYTE lfOutPrecision;
    BYTE lfClipPrecision;
    BYTE lfQuality;
    BYTE lfPitchAndFamily;
    TCHAR lfFaceName[LF_FACESIZE];
    } LOGFONT;



  • danke tom, habe msdn auch gerade gesehen....

    ohm, wenn ich nur nicht so bled wäre. aber wer macht schon einen link oben in die mitte eines fensters^^ 🙄


Anmelden zum Antworten