Приховування знак вставки

Кожного разу, коли ваша заявка Перемальовує екран під час обробки повідомлення не WM_PAINT, його треба зробити в знак вставлення невидимий за допомогою HideCaret функції. Коли закінчили заявку малюнок, заново відобразити на знак вставлення за допомогою ShowCaret функції. Якщо ваша заявка процесів WM_PAINT повідомлення, не варто приховати і оновлюються за допомогою курсору, тому що ця функція робить це автоматично.

Наведений нижче зразок коду показує, як мати заявку приховати на знак вставлення під час малювання символу на екрані та під час обробки повідомлення WM_CHAR.

HWND hwnd, / / вікна, ручка HDC hdc;     / / контексту пристрою випадку WM_CHAR: перемикач (wParam) {випадку 0x08: / / процес на клавішу backspace. 
             
                перерви; 
 
            справа 0x09: / / процес вкладки.  
             
                перерви; 
 
            справа 0x0D: / / процес повернення каретки. 
             
                перерви; 
 
            справа 0x1B: / / процес втекти. 
             
                перерви; 
 
            випадку 0x0A: / / процес до переходу. 
             
                перерви; 
 
            за замовчуванням: / / приховати у за допомогою курсору. 

                HideCaret(hwnd); 
 
                / / Нічия символу на екрані. 
 
                HDC = GetDC(hwnd); 
                Об'єкт (hdc, GetStockObject(SYSTEM_FIXED_FONT)); 
 
                TextOut (hdc, x, y, lpszChar, 1); 
 
                ReleaseDC (hwnd, hdc); 
 
                / / Дисплей на за допомогою курсору. 
 
                ShowCaret(hwnd); 
 
        } 

 

Якщо ваш застосунок викликає функцію HideCaret кілька разів без виклику ShowCaret, на знак вставлення не буде відображатися, поки програма також викликає ShowCaret таку ж кількість разів.