Button Style
-
Hast ein Commnon Control 6 Manifest in Deiner Anwendung?
Hast Du das Supported OS gesetzt im Manifest?Siehe:
http://msdn.microsoft.com/en-us/library/windows/desktop/hh404286(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/bb773175(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/hh848036(v=vs.85).aspx
-
Hab es ja bereits hinbekommen, siehe meinen Post zuvor.
Das einzige was mich jetzt noch ein bisschen stört ist, dass die Schriftart nicht so schön aussieht wie bei anderen Anwendungen.
-
Siehe Shell Dialog...
-
Hab jetzt zu Shell Dialog nichts wirklich hilfreiches gefunden, aber dafür das hier:
Ich muss nach jedem erstellten Window diesen Code einfügen:::SendMessage(hWnd, WM_SETFONT, (WPARAM)::GetStockObject(DEFAULT_GUI_FONT), MAKELPARAM(FALSE, 0));
-
Window? Ich denke Du redest von Dialogen.
Ansonsten ist dies falsch.
Siehe:
http://msdn.microsoft.com/en-us/library/windows/desktop/dd374112(v=vs.85).aspxSiehe auch SPI_GETNONCLIENTMETRICS
http://msdn.microsoft.com/en-us/library/windows/desktop/ff729175(v=vs.85).aspx
-
Ich meinte bei jedem Child-Window. Also zB. ein Text oder Eingabefeld.
-
Das musst Du selber machen. Nur der richtige Font für das OS wird anders ermittelt.
-
Heißt dass dan also, dass es für alle übernommen wird, ohne dass ich etwas extra angeben muss?
-
Bei einem Dialog: klar!
Bei allen anderen Fensterarten musst Du WM_SETFONT verwenden.
-
Ich bin jetzt ein bisschen verwirrt.
Ich hab einen Dialog und erstelle dort dann Child-Windows mit einem Text.
Dieser soll dann ganz einfach die Standard-Systemschrift sein. Auch bei Eingabe Feldern, Radio Buttons, Chechboxes, usw. sollte es sein.Ich muss jetzt ein paar Structuren erstellen, damit ich die Systemschrift bekomme? Ist sehr fragwürdig, denn beim Style ging es um einiges Leichter.
-
Dialoge werden normalerweise mit Ressource-Templates erzeugt.
Wenn Du mit CreateWindow ein Child erzeugst dann musst Du auch WM_SETFONT verwenden. Aber auch dann ist es einfacher vom Parent (Dialog), mit WM_GETFONT den font zu holen.
-
Ich erstelle mein Fenster nicht mit einer .rc Datei, sondern ich habe ein .cpp in der ich dann den Code schreibe und von dem aus wird dann alles erstellt.
-
hikclimber schrieb:
Ich erstelle mein Fenster nicht mit einer .rc Datei, sondern ich habe ein .cpp in der ich dann den Code schreibe und von dem aus wird dann alles erstellt.
Dann musst Du WM_SETFONT verwenden. Aber für Dialoge ist das viel zu umständlich warum auch?
-
Mit WM_SETFONT heißt es jedoch auch, dass ich es für jedes Handle angeben muss. Also im Prinzip nur das gleiche wie das hier:
::SendMessage(hWnd, WM_SETFONT, (WPARAM)::GetStockObject(DEFAULT_GUI_FONT), MAKELPARAM(FALSE, 0));
Ich verstehe es nicht, warum es nicht so einfach wie beim Style sein kann..