Win32 API. Каретки - Функция CreateCaret

ОГЛАВЛЕНИЕ

Функция CreateCaret

(СоздатьКаретку)

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

Синтаксис

BOOL CreateCaret
(
HWND hWnd, // дескриптор окна владельца каретки
HBITMAP hBitmap, // дескриптор точечного рисунка для формы каретки
int nWidth, // ширина каретки
int nHeight // высота каретки
);

Параметры
hWnd
Идентифицирует окно, которое обладает кареткой.
hBitmap
Идентифицирует точечный рисунок, который определяет форму каретки. Если этот параметр - НОЛЬ (NULL), каретка объемная. Если этот параметр - (HBITMAP) 1, каретка серая. Если этот параметр - дескриптор точечного рисунка, каретка - определяется точечным рисунком. Дескриптор точечного рисунка, должен быть создан функцией CreateBitmap, CreateDIBitmap, или LoadBitmap. Если hBitmap - дескриптор точечного рисунка, CreateCaret игнорирует параметры nWidth и nHeight; точечный рисунок сам определяет собственную ширину и высоту.
nWidth
Устанавливает ширину каретки в логических единицах измерения. Если этот параметр нулевой, ширина устанавливается шириной границы определенного системой окна. Если hBitmap - дескриптор точечного рисунка, CreateCaret игнорирует этот параметр.
nHeight
Устанавливает высоту, в логических единицах измерения, каретки. Если этот параметр нулевой, высота устанавливается высотой границы определенной системой окна. Если hBitmap - дескриптор точечного рисунка, CreateCaret игнорирует этот параметр.

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

Замечания
Параметры nWidth и nHeight устанавливают ширину и высоту каретки, в логических единицах измерения; точная ширина и высота, в пикселях, зависят от режима отображения окна.
CreateCaret автоматически уничтожает предыдущую форму каретки, если таковая имеется, независимо от окна, которое обладает кареткой. Каретка скрыта до вызова из прикладной программы функцией ShowCaret, которая делает каретку видимой.
Каретка - общедоступный ресурс; имеется только одна каретка в системе. Окно должно создать каретку только тогда, когда оно имеет фокус клавиатуры или активно. Окно должно уничтожить каретку перед потерей фокуса клавиатуры или перед потерей активности.
Вы можете возвратить ширину или высоту границы окна системы, используя функцию GetSystemMetrics, определяя значения флажков SM_CXBORDER и SM_CYBORDER. Использование ширины или высоты границы окна гарантирует, что каретка будет видима на экране с высокой разрешающей способностью.

Смотри также
CreateBitmap, CreateDIBitmap, DestroyCaret, GetSystemMetrics, HideCaret, LoadBitmap, ShowCaret

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

Windows NT			Да 
Win95 Да
Win32s Да
Импортируемая библиотека user32.lib
Заголовочный файл winuser.h
Unicode Нет
Замечания по платформе Не имеется