Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




 

Шаг 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(). Например, для линии обработчик должен иметь такой вид:

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

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

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...