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


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


/p>

147

РАБОТА С ТРЕКБАРОМ

Очередным клоном линейки прокрутки является ползунок (trackbar или slider). Его внешний вид достаточно эффектен и интересен. Он напо­минает регулятор, используемый в аппаратуре, скажем, в качестве регу­лятора громкости. Небольшим отличием трекбара от линейки прокрутки является то, что у ползунка есть шкала, вдоль которой он движется. Честно говоря, мне очень не нравится переводить на русский слова, к которым я уже привык и которые обычно используются в качестве про­граммистского сленга. Поэтому давайте будем в данном случае под словом «трекбар» понимать весь элемент управления, а под словом «слайдер» - указатель, движущийся вдоль шкалы.

К сожалению, для создания трекбара не предусмотрено специальной функции, поэтому создавать его необходимо посредством вызова функ­ции CreateWindowQ или CreateWindowExQ. При этом в качестве имени класса следует указать макрос TRACKBARjCLASS, который описан в commctrl.h:

#ifdef JATN32

«define TRACKBAR_CLASSA

#deime TRACKBAR_CLASSW

#ifdcf UNICODE

#define TRACKBAR_CLASS

tfdefine TRACKBAR_CLASS

#endif

#else

#defme TRACKBAR_CLASS

#cndif

"msctls_trackbar32" L"msclls trackbar32"

TRACKBAR_CLASSW TRACKBAR_CLASSA

"msctls trackbar"

При создании трекбара могут использоваться стили окна, идентифи­каторы которых начинаются с TBS (табл. 35).

Что еще можно сказать об этих стилях? По-моему, здесь все ясно. Да­же понятно, что стили TBS_HORZ, IBS BOTTOM и TBS RIGHT явля­ются стилями, принимаемыми по умолчанию.

А теперь настало время рассмотреть сообщения, посредством которых осуществляется управление трекбаром. Все эти сообщения приведены в табл. 36.

148

Таблица 36. Сообщения, посылаемые трекбару

Сообщение

Значение

Описание

TBM_GETPOS TBM^GETRANGEMIN TBM_GETRANGEMAX TBMJ3ETTIC

TBM_SETTIC TBM_SETPOS

TBM_SETRANGE

TBM_SETRANGEMIN TBM_SETRANGEMAX

TBM^CLEARTICS TBM_SETSEL

'BM_SETSELSTART "BM_SETSELEND BMJ3ETPTICS BM_GETTICPOS

WMJJSER WM_USER + I WMJJSER + 2 WM_USER + 3




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



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