The edit, button, static, listbox, and combobox controls all have that old system-looking font in them by default, even when using visual styles.

What is the correct way of getting or creating a font for these controls that respects the current theme?

I tried GetThemeSysFont with TMT_CAPTIONFONT and TMT_SMALLCAPTIONFONT but they both return the same font for every control, which is identical to the main window caption and too big for these controls. Should I simply take this font and decrease the size or is there some other method I should know about?