Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Добавление пиктограмм на панель инструментов




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

Предположим, что на панели инструментов требуется создать пиктограмму, которая вызывает программу вычерчивания в окне приложения красного, круга. В качестве значка этой пиктограммы в окне редактора пиктограммы нарисуем красный круг (с помощью, инструментa,Ellipse). Выведите на экран окно свойств Properties, и присвойте пиктограмме соответствующий идентификатор команды, например ID_CIRCLE.

Далее следует определить для пиктограммы содержание контекстного окна указателя (ToolTip) и ввести ее описание. Контекстное окно указателя будет выводиться на экран в том случае, когда пользователь поместит указатель мыши на данную пиктограмму и задержит его |на ней на одну-две секунды. Эта процедура напомнит пользователю, назначение данной пиктограммы. Для нашего примера подходящим значением для указателя будет слово Circle. Описание же пиктограммы выводится в строке состояния приложения. В нашем случае подходящим описанием будет фраза: Draws a red circle in the window. Введите обе эти текстовые строки в поле Prompt. Сначала вводится текст описания пиктограммы, затем — знак перехода на новую строку (\n) и текст в контекстном окне указателя для данной пиктограммы. (рис. 11.5).

Формирование строки состояния

Строки состояния являются очень полезными объектами, которые располагаются в нижней части окон приложений. Функция строки состояния (как она определена MFC) — отображение описания команд и состояния различных клавиш клавиатуры, включая клавиши <Caps Lock> и <Scroll Lock>. Фактически строка состояния настолько стандартна с точки зрения программистов (это справедливо, по крайней мере, для приложений, создаваемых с помощью AppWizard), что для нее даже отсутствуют ресурсы, которые можно было бы редактировать, как в случае с панелью инструментов. Достаточно только потребовать от AppWizard включить строку состояния в приложение, и вся необходимая работа будет автоматически выполнена.

Четвертый этап создания приложения – выбор опций, определяющих внешний вид элементов пользовательского интерфейса. Диалоговое окно Step 4 содержит много переключателей-флажков, соответствующих предлагаемым опциям оформления. Среди них есть флажок Initial status bar.

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

CommandTolndex() Возвращает индекс индикатора, заданного его

идентификатором

Create()                    Создает строку состояния

GetIternID()             Возвращает идентификатор индикатора,

заданного его индексом

GetItemRect()          Возвращает параметры прямоугольника

элемента, заданного его индексом  

GetPanelnfoO          Возвращает информацию об индикаторе     

GetPaneStyle()         Возвращает стиль индикатора

GetPaneText()          Возвращает текст индикатора

GetStatusBarCtrl()  Возвращает ссылку на объект класса

CStatusBarCtrl, представленный объектом

CStatusBar

Setlndicators()         Задает идентификатор индикатора

SetPanelnfo()           Задает для индикатора идентификатор, ширину

и стиль

SetPaneStyle()         Задает стиль индикатора

SetPaneText()          Задает текст индикатора

Если при настройке AppWizard задать включение в приложение строки состояния, будет создано окно приложения, подобное изображенному на рис. 11.10. Строка состояния разделена на несколько частей, называемых ячейками, которые отображают определенную информацию о состоянии приложения и системы. Эти ячейки, отмеченные на рис. 11.10, включают индикаторы для клавиш <Caps Lock>, <Num Lock> и <Scroll Lock>, а также область сообщений, в которой отображаются данные о состоянии и описание команд. Индикаторы прибиваются к правому краю, а все оставшееся место отдается для информационной строки. Чтобы увидеть описание команды, следует поместить указатель мыши на пиктограмму панели инструментов (рис. 11.10).

Рамка окна запоминает информацию об индикаторах в массиве. Самый левый индикатор имеет индекс 0. Когда вы создаете status bar, вы используете массив идентификаторов строк, которые рамка окна назначает соответствующим индикаторам. Далее можно пользоваться или идентификатором строки, или индексом его в массиве. По умолчанию первый индикатор «эластичный», он занимает все место оставшееся от индикаторов, которые прибиты к правому краю.

Чтобы создать объект класса CStatusBar необходимо выполнить следующие шаги:

Сконструировать объект CStatusBar;

Вызвать метод Create, чтобы создать окно для панели и назначить его для объекта класса CStatusBar;

Вызвать метод SetIndicators, чтобы назначить идентификатор строки каждому индикатору.

Есть три пути для установки текста на панели status bar.

Вызвать метод SetWindowText, чтобы установить текст на панели 0 только.

Вызвать метод CCmdUI::SetText при выполнении ON_UPDATE_COMMAND_UI для панели состояния.

Вызвать метод SetPaneText, чтобы установить текст на любой другой панели.

Наиболее распространенный метод настройки строки состояния — это добавление в нее новых ячеек. Для добавления ячейки в строку состояния следует выполнить следующее.

1. Создать идентификатор команды для новой ячейки.

2. Подготовить текст, помещаемый в ячейку по умолчанию.

3. Добавить идентификатор команды ячейки в массив индикаторов строки состояния.

4. Создать для ячейки функцию обработки команды обновления.

19. Доступ к данным в Visual C++. Технологии DAO, RDO, ODBC.










Последнее изменение этой страницы: 2018-04-12; просмотров: 242.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...