Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Создание меню и панели инструментов




 

Шаг 5. Добавление меню Tools.

Для добавления меню надо в окне рабочего пространства выбрать вкладку ResourceView, раскрыть дерево ресурсов, и в теме Menu выбрать IDR_MAINFRAME, сделав двойной щелчок ЛКМ (рис. 4). Если вкладка ResourceView отсутствует, то выполните команду ViewèResource view для ее открытия.

 

 
 

Рис. 4. Выбор ресурса меню

 

В окне справа Вы должны увидеть окно редактора меню с уже имеющимися темами главного меню и пустым прямоугольником вслед за последней командой меню Help.

Для добавления новой темы главного меню поместите указатель мыши в пустой прямоугольник, щелкните ЛКМ и введите наименование темы меню Tools и нажмите клавишу Enter. Вы можете с помощью мыши перетащить команду меню Tools в нужную позицию в главном меню, например, поместить ее перед командой Help. Обратите внимание, что в окне Properties (оно расположено справа) отображаются свойства выбранной темы меню. Если окно свойств не отображается, откройте его с помощью команды ViewèOther WindowsèProperty Window Alt+Enter.

Для добавления команд меню щелкните ЛКМ по пустому прямоугольнику под темой Tools, введите имя команды меню Line и нажмите клавишу Enter. Аналогичным способом добавьте другие команды меню Tools (рис. 5).

 
 

Рис. 5. Добавление команд меню Tools

 

Для вставки новых тем или команд меню достаточно нажать клавишу Ins в нужном месте, а для удаления – клавишу Del. Если после создания команд меню Вы посмотрите их свойства, то обнаружите, что мастер присвоил им идентификаторы. Например, команде Line присвоен идентификатор ID_TOOLS_LINE (см. окно Properties). Эти идентификаторы программист может назначать по своему усмотрению, но лучше оставить их такими, как есть. Подобные идентификаторы имеют все ресурсы приложения, в частности, элементы управления, и они часто используются в тексте программы для ссылки на соответствующий ресурс.

Для каждой темы главного меню или команды меню в свойстве Prompt можно указать текст, который должен выводиться в строке статуса окна приложения при выборе данной темы или команды меню. В поле Caption можно указать символ & перед той буквой наименования команды меню, которую можно использовать для выбора команды меню с помощью соответствующей клавиши. В качестве примера посмотрите на свойства тем и команд меню, сгенерированных мастером.

 

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

Для добавления кнопок на панель инструментов раскройте ветвь Toolbar в окне ResourceView и щелкните ЛКМ идентификатор IDR_MAINFRAME. Откроется окно редактора ресурсов, в котором Вы сможете добавить пять новых кнопок, дублирующих команды меню Tools. Всякий раз, когда Вы рисуете что-нибудь на кнопке, редактор ресурсов добавляет в конец панели новую пустую кнопку.

Используя редактор ресурсов, создайте пять кнопок и нанесите на них подходящие изображения, например такие, как на рис. 6.

Удалить ненужные кнопки можно путем «вытаскивания» их из панели инструментов вниз, на свободное место.

Шаг 7. «Привязывание» кнопок к командам меню Tools.

Привязать кнопки к соответствующим командам меню очень просто: сделайте двойной щелчок ЛКМ по кнопке и в появившемся окне Properties в выпадающем списке ID выберите нужный идентификатор команды. Например, для кнопки с изображение линии имеет смысл выбрать идентификатор ID_TOOLS_LINE, присвоенный команде Line меню Tools.

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

 

 
 

Рис. 6. Новые кнопки на панели инструментов

 

 

Шаг 8. Связывание флагов со средствами пользовательского интерфейса.

Когда пользователь будет выбирать какой-либо инструмент рисования, например, эллипс, мы должны установить флаг для эллипса и сбросить все остальные флаги. Сделать это нужно в обработчике соответствующей команды меню, который еще нужно создать с помощью мастера. Для этого выберите вкладку ClassView, в ней выберите класс CPainterView и вызовите для него окно свойств (Alt+Enter). В окне свойств щелкните по кнопке Events, найдите идентификатор требуемой команды (например, ID_TOOLS_LINE), щелкните ЛКМ по знаку “+” и создайте обработчик этой команды OnToolsLine(). Подобным образом создайте обработчики для всех остальных команд меню Tools. Отредактируйте обработчики команд следующим очевидным образом:

Теперь если Вы запустите приложение на выполнение, то должны увидеть доступными все команды меню Tools и кнопки панели инструментов. Если какая-либо команды меню будет отображаться как недоступная, значит, для нее не создан обработчик.

Для завершения разработки интерфейса осталось сделать совсем немного: дать знать пользователю о текущем выбранном режиме (фигуре). Для достижения этой благородной цели мы воспользуемся методом SetCheck().

 

Шаг 9. Пометка команд меню.

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

В каждый созданный обработчик добавьте один-единственный оператор, в котором вызывается функция SetCheck(). Например, для линии обработчик должен иметь такой вид:

Тестируйте приложение, запустив его на выполнение. Убедитесь в том, что при выборе какой-либо команды или нажатии кнопки выбранная команда меню помечается галочкой, а кнопка переходит в состояние нажатой. Все другие кнопки при этом отображаются как ненажатые.

Таким образом, разработка меню и инструментальной панели как главных средств пользовательского интерфейса завершены.

 




Поделиться с друзьями:


Дата добавления: 2014-12-26; Просмотров: 437; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.