AndyZ
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Я почитал документацию, и обнаружилось следующее: почти везде в MSDN для получения системного шрифта предлагается использовать MS Shell Dlg 2, который и есть Message Box Font (то есть по умолчанию он маппится на Тахому), либо вызывать GetStockObject(DEFAULT_GUI_FONT), который выдаёт MS Shell Dlg (который является шрифтом в сообщениях в Windows 98 и ранее, а в Win 2k и позднее нужно использовать Ms Shell Dlg 2). Есть соответствующая функция и в UXTheme API. Раз Майкрософт в своей документации предлагает использовать в приложениях именно шрифт Ms Shell Dlg 2, то его и используют. Например, Firefox в дереве истории использует именно этот шрифт. Но: стандартное виндовое дерево использует шрифт, который в Display Properties называется Icon Font - шрифт для значков на рабочем столе. Казалось бы, при чём здесь Icon? А ещё интересно, что шрифт Message Box Font никак не влияет на шрифт в стандартном диалоге, например, File Open. Так что со шрифтами у Майкрософта путаница. И вообще, чем больше менять дефолтные настройки шрифтов в винде, тем больше шансов, что будут глюки. Поэтому я не вижу смысла что-то менять, разве только если будет много жалоб на "неправильный" шрифт. Добавлено: Хотя, конечно, если стремиться к полному копированию стандартных контролов, то шрифт действительно надо бы поменять. Тогда надо убедиться, что моё предположение о том, что там используется Icon Label Font, верно. Эксперимент на Win XP показывает, что это так. А Вы не могли бы посмотреть на Win 2000, как ведёт себя дерево в версии 0.4.1, когда меняется Icon Font? | Всего записей: 214 | Зарегистр. 23-01-2006 | Отправлено: 23:06 25-07-2006 | Исправлено: AndyZ, 23:14 25-07-2006 |
|