Программирование для IBM OS2




Создание круглого регулятора


Для создания круглого регулятора вы можете воспользоваться функцией WinCreateWindow, как это показано ниже:

hWndCirc1 = WinCreateWindow(hWnd, WC_CIRCULARSLIDER , "Красный", WS_VISIBLE | CSS_NOTEXT, 0, 0, 0, 0, hWnd, HWND_TOP, CIRCSLD1_ID, NULL, NULL);

Здесь мы привели фрагмент обработчика сообщения WM_CREATE функции окна приложения Client Window, имеющего идентификатор hWnd. Размеры и расположение регулятора будут определены позже при обработке сообщения WM_SIZE. Как вы можете заметить, регулятор создается точно также, как и любой другой описанные нами ранее орган управления.

Внешний вид круглой ручки управления определяется стилем регулятора. Ниже приведены значения стилей, которые вы можете комбинировать при помощи логической операции ИЛИ:

Стиль Описание
CSS_360 С помощью этого стиля вы можете создать ручку управления, которая будет поворачиваться на 360 градусов. При этом будут автоматически установлены стили CSS_NONUMBER и CSS_NOBUTTON
CSS_CIRCULARVALUE Вместо риски на поверхности ручки будет создана круглая метка в виде небольшого углубления круглой формы
CSS_MIDPOINT Начальная и конечная риска на шкале регулятора будет иметь увеличенную длину
CSS_NOBUTTON Если указан этот стиль, в окне органа управления не будет кнопок + и -
CSS_NONUMBER Отмена отображения цифрового значения текущей позиции
CSS_NOTEXT Отмена отображения подписи под регулятором
CSS_POINTSELECT Если указан стиль CSS_POINTSELECT, изменяется способ управления регулятором при помощи мыши. Если установить курсор мыши в новую позицию и сделать щелчок левой клавишей мыши, регулятор скачкообразно изменит свою текущую позицию таким образом, что она будет совпадать с позицией курсора
CSS_PROPORTIONALTICKS Длина рисок на шкале регулятора будет вычисляться в процентах от радиуа регулятора. Этот способ удобен при работе видеоадаптера в режимах с низким разрешением




Содержание  Назад  Вперед