Функция CreateCaret


Функция CreateCaret создает новую форму для системной каретки и назначает монопольное использование каретки заданным окном. Формой каретки может быть линия, блок или точечный рисунок.

Синтаксис

BOOL CreateCaret(      
    HWND hWnd,
    HBITMAP hBitmap,
    int nWidth,
    int nHeight
);

Параметры

hWnd

[in] Дескриптор окна, которое владеет кареткой.

hBitmap

[in] Дескриптор точечного рисунка, который определяет форму каретки. Если этот параметр -  ПУСТО (NULL), каретка является сплошной. Если этот параметр равен (HBITMAP) 1, каретка является серой. Если этот параметр - дескриптор точечного рисунка, каретка - заданный точечный рисунок. Дескриптор точечного рисунка должен быть создан функцией CreateBitmap, CreateDIBitmap или  LoadBitmap.

Если hBitmap - дескриптор точечного рисунка, функция CreateCaret игнорирует параметры nWidth и nHeight ; точечный рисунок определяет свою собственную ширину и высоту.

nWidth

[in] Устанавливает ширину каретки в логических единицах измерения. Если этот параметр равняется нулю, ширина устанавливается определяемой системой шириной границ окна. Если hBitmap - дескриптор точечного рисунка, CreateCaret игнорирует этот параметр.

nHeight

[in] Устанавливает высоту каретки в логических единицах измерения. Если этот параметр равняется нулю, высота устанавливается определяемой системой высотой границ окна. Если hBitmap - дескриптор точечного рисунка, CreateCaret игнорирует этот параметр.

Возвращаемые значения

Если функция завершается успешно, величина возвращаемого значения - не нуль.

Если функция завершается ошибкой, величина возвращаемого значения - нуль. Чтобы получить дополнительные сведения об ошибке, вызовите GetLastError.

Замечания

Параметры nWidth и nHeight  устанавливают ширину  и высоту каретки, в логических  единицах измерения; точная ширина и высота, в пикселях, зависят от режим отображения окна.

Функция CreateCaret автоматически уничтожает предыдущую форму каретки, если она есть, независимо от окна, которое владеет кареткой. Каретка скрывается до тех пор, пока приложение не вызовет функцию ShowCaret, чтобы сделать каретку видимой.

Система предусматривает одну каретку на очередь. Окно должно создавать каретку, только тогда, когда оно имеет фокус клавиатуры или активно. Окно должно уничтожить каретку перед потерей фокуса клавиатуры или перехода в не активный режим.

Вы можете извлечь ширину или высоту границы окна системы при помощи использования функция GetSystemMetrics, устанавливая значения SM_CXBORDER и SM_CYBORDER. Использование ширины  или высоты границы окна гарантирует то, что каретка будет видна на экране с высокой разрешающей способностью.

Смотри также 

Обзор Каретки, CreateBitmap, CreateDIBitmap, DestroyCaret, GetSystemMetrics, HideCaret, LoadBitmap, ShowCaret

Размещение и совместимость CreateCaret

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz