Access 2002

Функции, предназначенные для работы с буфером обмена


Кроме того, функции, предназначенные для работы с буфером обмена, используют дескрипторы, так же как некоторые уже знакомые вам функции работы с окнами. В Windows API дескрипторы буквально вездесущи: они используются для идентификации всего, что можно идентифицировать. Многие функции, создающие объект или предоставляющие доступ к уже существующему объекту Windows, возвращают либо дескриптор, либо ноль, если операция прошла неудачно. Вот как, к примеру, выглядит вызов функции Global All ос, выделяющей память приложению Windows:

Если Global All ос успешно справилась со своей задачей, она возвращает дескриптор выделенной памяти, который сохраняется в переменной hMemory. Далее оператор If проверяет, содержит ли hMemory ненулевое значение, и, если нет, функция возвращает код ошибки и завершает свою работу.

Если вас пугает объем исходного кода CClipboard, не волнуйтесь. Вам совершенно незачем в нем разбираться, если только вас устраивает то, как он работает. Просто импортируйте этот модуль в свой проект и пользуйтесь им на здоровье! Интерфейс данного класса, состоящий из пары несложных методов, предельно прост.

Результат использования двух методов класса CClipboard демонстрирует форма frmCl ipoard, показанная на  14.3. Если ввести какой-нибудь текст в первое поле этой формы и щелкнуть на кнопке Сору, он будет скопирован в буфер обмена. Если же щелкнуть на кнопке Paste, содержимое буфера обмена будет скопировано во второе текстовое поле. Код, связанный с этими двумя кнопками, просто вызывает методы класса CClipboard:

Использование класса CClipboard

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