Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
51
Добавлен:
16.02.2016
Размер:
10.23 Mб
Скачать

Инструментальная панель WizardBar

Универсальная встраиваемая инструментальная панель WizardBar служит для оперативного управления программным кодом и обеспечивает доступ к некотором наиболее важным возможностям пакета Visual Studio, таким, которые могут быть доступны и из ClassWizard, а также с помощью вкладки ClassView (доступ к функциям этой вкладки выполняется через контекстное меню, вызываемое по щелчку правой кнопкой мыши).

Панель WizardBar расширяет функциональные возможности, предоставляемые вкладкой ClassView, реализуя функцию слежения ("tracking") за перемещением курсора в окне кода программы (в редакторе текста). WizardBar автоматически изменяет содержание отображаемых списков в зависимости от положения курсора и при переходе от одного метода к другому.

Инструментальная панель WizardBar позволяет работать с классами,

членами классов и ресурсами - по щелчку мыши на кнопке можно добавить новый класс, создать новый метод или функцию, перейти на существующие метод или функцию.

Рис. 2.3. Отображение инструментальной панели WizardBar

Если инструментальная панель WizardBar не видна, то для ее отображения следует щелкнуть правой кнопкой мыши на неиспользуемой области любой инструментальной панели и в открывшемся контекстном меню выбрать пункт WizardBar (рис. 2.3).

Инструментальная панель WizardBar содержит три взаимосвязанных списка и один элемент управления Action.

Комбинированные списки инструментальной панели WizardBar именуются списком классов (Class), списком фильтра (Filter) и списком членов класса (Members).

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

Список классов панели WizardBar всегда отображает классы активного проекта [АК1].

Список фильтров позволяет отображать все методы-члены класса или методы для соответствующего ресурса (если ресурс определен). На рис. 2.4 показан список фильтров для класса окна диалога, имеющего два ресурса: командные кнопки ОК и Cancel, реализуемые ресурсами IDCANCEL и IDОК.

Рис. 2.4. Комбинированный список фильтров панели WizardBar

В том случае, если в качестве фильтра будет указан какой-либо описанный ресурс, например ресурс командной кнопки IDOK, то список членов класса отобразит все доступные для данного ресурса события (рис. 2.5). Обработка этих событий реализуется соответствующими методами. Если код программы содержит метод обработки события, то идентификатор события отображается полужирным шрифтом.

Рис. 2.5. Список доступных событий для ресурса командной кнопки IDОК.

В правой части панели WizardBar расположен элемент управления

Action. Этот элемент управлениясостоит из кнопки и ниспадающего (drop-down) меню, отображающего список элементов пользовательского интерфейса (UI), предоставляемый панелью WizardBar. Кнопка может иметь три состояния:

  • Tracking - панель WizardBar активна, существует открытый проект и WizardBar отслеживает текущий контекст;

  • Active (not tracking) - панель WizardBar активна и существует открытый проект;

  • Disabled - нет открытых проектов.

Меню, отображающее список элементов пользовательского интерфейса (рис. 2.6), вызывается или щелчком мыши на стрелке вниз элемента управления Action, или щелчком правой кнопки мыши, спозиционированной на любом из трех комбинированных списков панели WizardBar.

Пункт меню, отображаемый полужирным шрифтом, указывает действие, выполняемое по умолчанию при щелчке мышью на кнопке Action. Так, при отображении в окне кода определения метода (файл исходного кода) действием по умолчанию будет отображение окна с объявлением этого метода (заголовочный файл).

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

Рис. 2.6. Меню, отображающее список элементов пользовательского интерфейса WizardBar

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

Если фокус имеет комбинированный список классов (Class), то действием по умолчанию является переход на первый член выбранного класса. Если для данного класса не реализовано никаких методов, то WizardBar отобразит диалог, позволяющий создать новый метод. Для глобальных классов C++ диалог позволяет создавать новый класс.

Если фокус имеет комбинированный список фильтров (Filter) и выбран ресурс ID, то действием по умолчанию является отображение в списке членов всех доступных для данного ресурса сообщений и переход на первый реализованный метод обработки сообщения (в алфавитном порядке). В том случае, если для указанного ресурса ID не реализовано ни одного метода обработки сообщения, то отображается диалог, в котором можно добавлять эти методы (рис. 2.7).

Если фокус имеет комбинированный список членов класса (Members), то действием по умолчанию является переход на определение выбранного члена класса.

Рис. 2.7. Диалоговое окно добавления методов обработки сообщений

Соседние файлы в папке VC++Баженова