Access 2002

Несколько недокументированных функций


Зато в MSACCESS.EXE имелось несколько недокументированных функций, которые возвращали количество установленных шрифтов, их список, а также количество и перечень доступных размеров каждого растрового шрифта. Мы переписали все эти функции на VBA, пользуясь Windows API и функциями с обратным вызовом, адреса которых теперь можно передавать Windows с помощью оператора AdderssOf. Следующие несколько разделов посвящены использованию этих функций, а демонстрационная форма frmListFonts покажет вам их в действии. Поскольку обо всех этих функциях проще всего рассказывать на примерах, будет лучше, если вы сразу откроете форму frmListFonts и посмотрите, как она работает. Эту форму можно увидеть на  15.13.

Этот набор функций мы написали для тех читателей нашей книги, у которых имеется программный код, включающий функции, предназначенные для работы со шрифтами из MSACCESS.EXE. Поскольку они написаны на VBA, вы можете не беспокоиться об их судьбе в будущих версиях Access. Однако эти функции довольно неуклюжи, и мы предлагаем вам при написании нового кода пользоваться вместо них другой нашей разработкой — классом Screenlnfo, который предоставляет информацию обо всем, что связано с выводом на экран. В частности, в этом классе есть свойство-массив Fonts, эмулирующее одноименное свойство объекта Screen из Visual Basic 6, а также свойство Fontlnfo, позволяющее получить информацию о конкретном шрифте. Ма наш взгляд, пользоваться классом Screenlnfo гораздо удобнее, чем нашими версиями недокументированных функций Access. Чтобы вы могли в этом убедиться, мы включили в демонстрационный проект еще одну версию формы,  15.13, — frmListFontsScreenlnfo, исходный код которой может быть вам полезен. Дополнительные примеры использования класса Screenlnfo вы найдете в модуле basTestFonts.

Комментарии закрыты