Schriftarten
-
Hi,
gibt es eine Tabelle mit Schriftarten die man per SelectObject einsetzten kann?MFG!
-
Du kannst auch deine eigene machen.
HFONT font = CreateFont(20, 0, 0, 0, 0, TRUE, 0, 0, 0, 0, 0, 0, 0, L"Times New Roman");http://www.winprog.org/tutorial/fonts.html
http://msdn.microsoft.com/en-us/library/dd183499Edit: Du kannst natürlich alle Schriftarten die auf deinem PC installiert sind verwenden. Diese kannst du mit EnumFontFamilies herausfinden oder einfach in deinem System nachschauen. http://msdn.microsoft.com/en-us/library/dd162619
-
Und welche Schriftart ist das welche die MessageBox verwendet?
PS: Und wo kann man im Sys nachgucken was alles für Schriften instaliert sind?
-
also die systemschrift bekommst du wie folgt.
static LOGFONT LogFont; NONCLIENTMETRICS ncm; ncm.cbSize = sizeof(NONCLIENTMETRICS); if (SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0)) memcpy(&LogFont, &(ncm.lfStatusFont), sizeof(LOGFONT)); //nicht mehr zwingend notwendig HFONT hFont = CreateFontIndirect(&LogFont);in der Logfont Strucktur unter dem Member lfFaceName findest du die systemschrift die auf dem jeweiligen pc eingestellt ist.
[NEW Edit]
oder kürzer nach Petzold's Bibel.GetObject(GetStockObject(SYSTEM_FONT),sizeof(LogFont),&LogFont);
-
SYSTEM_FONT liefert nicht den Font, der in der UI neuerer Windows Systeme verwendet wird!