На главную

On-line справка по Win32 API

Написать письмо
БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО!
Список всех статей A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z | Скачать Вниз

Hiding a Caret



Whenever your application redraws a screen while processing a message other than WM_PAINT, it must make the caret invisible by using the HideCaret function. When your application is finished drawing, redisplay the caret by using the ShowCaret function. If your application processes the WM_PAINT message, it is not necessary to hide and redisplay the caret, because this function does this automatically.

The following code sample shows how to have your application hide the caret while drawing a character on the screen and while processing the WM_CHAR message.

HWND hwnd, // window handle
HDC hdc; // device context

case WM_CHAR:
switch (wParam)
{
case 0x08:
.
. // Process a backspace.
.
break;

case 0x09:
.
. // Process a tab.
.
break;

case 0x0D:
.
. // Process a carriage return.
.

break;

case 0x1B:
.
. // Process an escape.
.
break;

case 0x0A:
.
. // Process a linefeed.
.
break;

default:
// Hide the caret.

HideCaret(hwnd);

// Draw the character on the screen.

hdc = GetDC(hwnd);
SelectObject(hdc,

GetStockObject(SYSTEM_FIXED_FONT));

TextOut(hdc, x, y, lpszChar, 1);

ReleaseDC(hwnd, hdc);

// Display the caret.

ShowCaret(hwnd);

}


If your application calls the HideCaret function several times without calling ShowCaret, the caret will not be displayed until the application also calls ShowCaret the same number of times.


Пригласи друзей и счет твоего мобильника всегда будет положительным!
Предыдущая статья
 
Сайт Народ.Ру Интернет
Следующая статья
Пригласи друзей и счет твоего мобильника всегда будет положительным!

Утаивание Символа ^



Всякий раз, когда ваше приложение перерисовывает экран при обработке сообщения кроме WM_PAINT, оно должно сделать символом ^ невидимым используя функцию HideCaret. Когда ваше приложение завершено рисуя, redisplay символ ^ используя функцию ShowCaret. Если ваше приложение обрабатывает сообщение WM_PAINT, нет необходимости прятать и redisplay символ ^, поскольку эта функция делает этой автоматически.

Кодовый образец следующего показывает как, чтобы иметь ваше приложение прятать символ ^ при чертеже символа на экране и при обработке сообщения WM_CHAR.

HWND hwnd, // РУЧКА окна HDC hdc; // контекст устройства

случай WM_CHAR: ключ (wParam)
{
случай 0x08:
.
. // Процесс возврат.
.
прерывание;

случай 0x09:
.
. // Процесс таб..
.
прерывание;

случай 0x0D:
.
. // Процесс перевод строки.
.

прерывание;

случай 0x1B:
.
. // Процесс переход.
.
прерывание;

случай 0x0A:
.
. // Процесс перевод строки.
.
прерывание;

умолчание: // Шкура символ ^.

HideCaret(hwnd);

// Сделайте символом на экране.

hdc = GetDC(hwnd);
SelectObject(hdc,

GetStockObject(SYSTEM_FIXED_FONT));

TextOut(hdc, x, y, lpszChar, 1);

ReleaseDC(hwnd, hdc);

// Отобразите символ ^.

ShowCaret(hwnd);

}


Если ваше приложение вызывает функцию HideCaret несколько раз не вызывая ShowCaret, символ ^ не будет отображен пока приложение также не вызовет ShowCaret тот же раз (а).


Вверх Version 1.3, Oct 26 2010 © 2007, 2010, mrhx Вверх
 mrhx software  Русский перевод OpenGL  Русский перевод Win32 API
 
Используются технологии uCoz