Список, его свойства и сообщения. Создание списка. Функции класса CListBox

Страницы работы

3 страницы (Word-файл)

Фрагмент текста работы

ЛЕКЦИЯ 1 2

СПИСОК____________________________________________________________________ 1

Свойства списка______________________________________________________________ 1

Сообщения списка____________________________________________________________ 1

Создание списка______________________________________________________________ 2

Функции класса CListBox_______________________________________________________ 2

СПИСОК

Элемент управления ”список” представляет собой окно, где отображен список текстовых элементов, которые пользователь может просматривать и выбирать.

Свойства списка

Если List Box создается с помощью редактора диалоговых окон, то на странице свойств Styles доступны следующие стили:

Selection                       определяет возможные способы выбора пунктов в списке;

Single                           пользователь может выбрать только один пункт (по умолчанию);

Multiple           можно с помощью мыши и клавиш Shift и Ctrl выбирать несколько пунктов;

Extended       в дополнение к возможностям множественного выбора, у пользователя есть воз-

можность расширять выделение путем перемещения курсора, что облегчает вы-

бор стоящих подряд пунктов;

None                              пользователь не может выбирать пункты;

Owner draw              используется, когда возникает необходимость формировать список с помощью

функций родительского окна;

                                      No                      (по умолчанию), пункты списка могут быть только текстовыми;

                                      Fixed                   все пункты будут иметь одинаковую высоту;

                                      Variable               высота пунктов может быть различна;

Has strings определяет, что пунктами списка являются строки. Используется для списка,

имеющего стиль Owner draw;

Sort                        элементы списка сортируются в алфавитном порядке (по умолчанию);

Notify        родительскому окну посылается сообщение, при изменении выбора элементов

или при двойном щелчке мыши;

Multi-column       дает возможность создавать список, состоящий из нескольких столбцов. При этом

возможность вертикальной прокрутки списка становится недоступной, а список

отображается в виде столбцов, которые могут не поместиться в окне. Для их про-

смотра следует использовать горизонтальную прокрутку, которая устанавливается

свойством Horizontal scroll;

Vertical scroll вертикальная прокрутка используется для больших списков, отображаемых в виде

одного столбца;

No redraw                     отключает автоматическое отображение изменений списка;

Use tabstops                 позволяет отображать позиции табуляции;

Want key input     включает посылку сообщений родительскому окну при нажатии клавиш;

Disable no scroll                 при свойстве Vertical scroll полоса прокрутки отображается как недоступная, даже

если список полностью отображается в окне, иначе полоса отображается только

по необходимости;

No integral height       отключает автоматическую подгонку высоты окна списка так, чтобы выводилось

целое число элементов списка. Окно отображается точно таким, каким его создал

разработчик;

Сообщения списка

Если при создании List Box назначено свойство Notify, то родительскому окну посылаются следующие сообщения:

LBN_SELCHANGE посылается при изменении выделения, а для элементов со стилем Multiple данное сообщение посылается также и при нажатии клавиш перемещения курсора;

LBN_DBLCLK

 посылается при двойном щелчке мыши на строке списка;

LBN_ERRSPACE

посылается, когда элемент управления не может получить запрашиваемую память;

LBN_KILLFOCUS

при потере фокуса ввода;

LBNJSELCANSEL

при отмене выбора;

LBN_SETFOCUS

при получении фокуса ввода. 

Последние три из перечисленных сообщений посылаются также и при отсутствии свойства Notify.

Создание списка

Для создания элемента управления List Box программным путем нужно использовать конструктор класса CListBox и функцию Create ( ), имеющую следующий прототип:

BOOL Create ( DWORD dwStyle , const RECT& rect , CWnd* pParentWnd , UINT

Похожие материалы

Информация о работе