Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Русский справочник ΠΏΠΎ Win32 APIΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 6

Автор Варас Π‘ΠΎΡ€ΠΎΠΊΠ°

BOOL SetWindowText (


HWND hWnd , // дСскриптор ΠΎΠΊΠ½Π° ΠΈΠ»ΠΈ элСмСнта управлСния

LPCTSTR lpString // адрСс строки

);


ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹


hWnd - ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΊΠ½ΠΎ ΠΈΠ»ΠΈ элСмСнт управлСния, Ρ‡Π΅ΠΉ тСкст измСняСтся.

lpString - ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΡƒΡŽΡΡ Π½ΡƒΠ»Π΅ΠΌ строку, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Π² качСствС Π½ΠΎΠ²ΠΎΠ³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΎΠΊΠ½Π° ΠΈΠ»ΠΈ тСкста элСмСнта управлСния.


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха возвращаСтся Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС, Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError


ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


Ѐункция SetWindowText отправляСт сообщСниС WM_SETTEXT ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ ΠΈΠ»ΠΈ элСмСнту управлСния. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ссли ΠΎΠΊΠ½ΠΎ являСтся ΠΎΠΊΠ½ΠΎΠΌ списка, созданным с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ WS_CAPTION, SetWindowText устанавливаСт тСкст для элСмСнта управлСния, Π° Π½Π΅ для элСмСнтов списка.

Ѐункция SetWindowText Π½Π΅ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ символы табуляции ( ASCII -ΠΊΠΎΠ΄ 0 x 09). Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ табуляции ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Π°Ρ Ρ‡Π΅Ρ€Ρ‚Π° (|).


Π‘ΠΌ . Ρ‚Π°ΠΊΠΆΠ΅


GetWindowText , WM_SETTEXT.


ΠšΠ°Ρ€Π΅Ρ‚ΠΊΠ°

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 ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° nWidth .

nHeight - опрСдСляСт высоту ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π² логичСских Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ…. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ, высота устанавливаСтся Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌΡƒΡŽ систСмой высоту Ρ€Π°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π°. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ hBitmap являСтся дСскриптором Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±Ρ€Π°Π·Π°, CreateCaret ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° nHeight .


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха возвращаСтся Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError .


ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


ЗначСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² nWidth and nHeight ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π² логичСских Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ…. Π’ΠΎΡ‡Π½Ρ‹Π΅ ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ высота Π² пиксСлях зависят ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° отобраТСния ΠΎΠΊΠ½Π°.

CreateCaret автоматичСски Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ Π²ΠΈΠ΄ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ, Ссли таковая Π΅ΡΡ‚ΡŒ, нСзависимо ΠΎΡ‚ ΠΎΠΊΠ½Π°-Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°.

Пока ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ShowCaret , ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠ° являСтся скрытой.

ΠšΠ°Ρ€Π΅Ρ‚ΠΊΠ° являСтся раздСляСмым рСсурсом: Π² систСмС присутствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠ°. Окно Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΎΠ½ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ фокус Π²Π²ΠΎΠ΄Π° с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Окно Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€ΡƒΡˆΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ потСряСт фокус Π²Π²ΠΎΠ΄Π° с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ станСт Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ систСмныС ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту ΠΎΠΊΠ½Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetSystemMetrics со значСниями ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² SM _ CXBORDER ΠΈ SM _ CYBORDER . ИспользованиС ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈΠ»ΠΈ высоты Ρ€Π°ΠΌΠΊΠΈ ΠΎΠΊΠ½Π° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π½Π° Π½Π° экранС с высоким Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ.


Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅


CreateBitmap, CreateDIBitmap, DestroyCaret, GetSystemMetrics, HideCaret, LoadBitmap, ShowCaret .


DestroyCaret


Ѐункция DestroyCaret Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ, освобоТдаСт ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ ΠΎΡ‚ ΠΎΠΊΠ½Π° ΠΈ удаляСт ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ с экрана.

Если ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠ° основана Π½Π° растровом ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ, DestroyCaret Π½Π΅ освобоТдаСт это ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.


BOOL DestroyCaret ( VOID )

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹


Ѐункция Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха возвращаСтся Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError .


ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


DestroyCaret Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Π΅Π»ΠΈ ΠΎΠΊΠ½ΠΎ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π΅ Π²Π»Π°Π΄Π΅Π΅Ρ‚ Сю. Если ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ Π²Π»Π°Π΄Π΅Π΅Ρ‚ ΠΎΠΊΠ½ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π΅, DestroyCaret Π½Π΅ выполняСт Π½ΠΈΠΊΠ°ΠΊΠΈΡ… дСйствий ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ FALSE.

ΠšΠ°Ρ€Π΅Ρ‚ΠΊΠ° являСтся раздСляСмым рСсурсом: Π² систСмС присутствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠ°. Окно Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΎΠ½ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ фокус Π²Π²ΠΎΠ΄Π° с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. Окно Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€ΡƒΡˆΠΈΡ‚ΡŒ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ потСряСт фокус Π²Π²ΠΎΠ΄Π° с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈΠ»ΠΈ станСт Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ.


Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅


CreateCaret, HideCaret, ShowCaret .


GetCaretBlinkTime


Ѐункция GetCaretBlinkTime Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ врСмя мСрцания ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ (врСмя, Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ для инвСртирования пиксСлСй ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ) Π² миллисСкундах. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ПанСль УправлСния.


UINT GetCaretBlinkTime ( VOID )

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹


Ѐункция Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха возвращаСтся врСмя мСрцания ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π² миллисСкундах.

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError .


Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅


SetCaretBlinkTime .


GetCaretPos


Ѐункция GetCaretPos ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ, Π² клиСнтских ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ…, Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ структуру Ρ‚ΠΈΠΏΠ° POINT .


BOOL GetCaretPos (


LPPOINT lpPoint // адрСс структуры, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹

);


ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹


lpPoint - ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° структуру Ρ‚ΠΈΠΏΠ° POINT , которая ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ клиСнтскиС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ.


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха возвращаСтся Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError .


ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


ΠŸΠΎΠ·ΠΈΡ†ΠΈΡ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ всСгда указываСтся Π² клиСнтских ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°Ρ… ΠΎΠΊΠ½Π°, содСрТащСго ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ.


Π‘ΠΌ. Ρ‚Π°ΠΊΠΆΠ΅


SetCaretPos, POINT .


HideCaret


Ѐункция HideCaret ΡƒΠ±ΠΈΡ€Π°Π΅Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ с экрана. Π‘ΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π½Π΅ Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Π΅Ρ‚ Π΅Π΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ Π½Π΅ измСняСт Ρ‚ΠΎΡ‡ΠΊΠΈ вставки.


BOOL HideCaret (


HWND hWnd // дСскриптор ΠΎΠΊΠ½Π° с ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ

);


ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹


hWnd - ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΊΠ½ΠΎ, Π²Π»Π°Π΄Π΅ΡŽΡ‰Π΅Π΅ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ. Если Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ€Π°Π²Π½ΠΎ NULL, HideCaret ΠΈΡ‰Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ для ΠΎΠΊΠ½Π°, Π²Π»Π°Π΄Π΅ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ.


Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния


Π’ случаС успСха функция Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ случаС Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ возвращаСтся Π½ΡƒΠ»ΡŒ. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ошибкС Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ GetLastError .


ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ


HideCaret прячСт ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Сю Π²Π»Π°Π΄Π΅Π΅Ρ‚. Если ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π½Π΅ Π²Π»Π°Π΄Π΅Π΅Ρ‚ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΎΠΉ, Ρ‚ΠΎ HideCaret Π½Π΅ выполняСт Π½ΠΈΠΊΠ°ΠΊΠΈΡ… дСйствий ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ FALSE.

Π‘ΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ кумулятивно. Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ HideCaret ΠΏΡΡ‚ΡŒ Ρ€Π°Π·, Ρ‚ΠΎ ΠΎΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΡ‚ΡŒ Ρ€Π°Π· Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ShowCaret для появлСния ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ.


Π‘ΠΌ . Ρ‚Π°ΠΊΠΆΠ΅


CreateCaret, DestroyCaret, GetCaretPos, SetCaretPos, ShowCaret .


SetCaretBlinkTime


Ѐункция SetCaretBlinkTime устанавливаСт врСмя мСрцания ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ число миллисСкунд.


BOOL SetCaretBlinkTime (


UINT uMSeconds // врСмя мСрцания ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ, Π² миллисСкундаΡ