Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 118


Итак, строка состояния сформирована. Но зачем она нужна без ото­браженной информации? Для того чтобы отобразить определенный текст в строке состояния, нужно послать ей сообщение SB SETTEXT. В качестве wParam этого сообщения используется результат логического сложения двух величин. Первая (iPart) - номер (считая от нуля) панели, в которой необходимо отобразить текст. Вторая (иТуре) определяет, как будет выглядеть текст. В качестве иТуре могут быть использованы значения, приведенные в табл. 32.

Таблица 32. Возможные типы строки состояния

Тип

Значение

 

Описание

 

 

 

0x0000

 

Текст кажется вдавленным в панель

 

 

 

SBT_NOBORDERS

 

0x0 I 00

 

Панель прорисовывается без ограничительны

 

\

 

 

 

 

 

линии

 

 

 

SBT POPOUT SBTJITLREADING

 

0x0200 0x0400

 

Панель прорисовывается выпуклой Используется для языков, в которых чтение и

 

дет

 

SnT_OWNERDRAW

 

Ох 1 000

 

справа налево, как, например, в арабском За прорисовку панели отвечает родительское

 

окно

 

138

IParam сообщения должен содержать указатель на строку, которую необходимо отобразить в панели строки состояния.

А теперь, для того, чтобы прочитать текст в панели, необходимо стро­ке состояния послать сообщение WM_GETTEXT. wParam этого сообще­ния должен содержать номер панели, a IParam - указатель на строку, в которую будет записан текст, содержащийся в панели.

Это основные сообщения, используемые при работе со строкой со­стояния.

Для иллюстрации некоторых возможностей строки состояния, о кото­рых я только что рассказал, рассмотрим несколько измененную програм­му из раздела о кнопках. Из-за мелких отличий не буду приводить текст программы целиком, а приведу только текст диалоговой функции:

BOOL CALLBACK ButtonsExampleDialogProc(HWND liDIg,

UiNT Message, WPARAM wParam, LPARAM IParam)




Начало  Назад  Вперед



Книжный магазин