12728

Разработка меню пользователя в Visual Basic

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 2 Тема: Разработка меню пользователя Цель занятия: Приобрести навыки в разработке меню пользователя создании родительских MDIформ и дочерних форм. Задание: Создать форму для вычисления площади плоской фигуры по варианту. Входны...

Русский

2013-05-03

64 KB

25 чел.

Лабораторная работа № 2

Тема: Разработка меню пользователя

Цель занятия: Приобрести навыки в разработке меню пользователя, создании  родительских  (MDI-форм) и  дочерних форм.

Задание:

  1.   Создать форму для вычисления площади плоской фигуры (по варианту). Входные параметры вводятся  с использованием элементов управления TextBox. Вычисления производятся при нажатии на кнопки ComandButton. Результаты выводятся с использованием элементов управления Label.  Аккуратно и красиво оформить форму.

№ вар.

Описание

1

Площадь круга: 

2

Площадь прямоугольника:  

3

Площадь треугольника (формула Герона)

где р - полупериметр

  1.   Добавьте  в проект MDI-форму (Project  → Add   MDI Form).
  2.   Разработайте меню пользователя для управления формами.

Возможная структура меню:

        Файл

             Открыть

  Сохранить

   Печать

              ----------------

               Выход

             Вычисление

                  Параллелепипед

          Площадь

          Объем

                  Цилиндр

          Площадь

         Объем

            Помощь

                О программе

                    Автор

  1.   Присвойте свойству MDIChild дочерних форм значение True.
  2.   Добавьте в главное меню пункт “Окно”, настройте его на автоматическое формирование списка открытых окон, напишите программу  для управления окнами.
  3.   Оформить отчет. Отчет должен содержать название лабораторной работы, тему,  распечатки текстов программ, форм, ответы на контрольные вопросы.

Контрольные вопросы.

  1.  Дайте определение родительской формы, дочерней формы.
  2.  Как добавить в проект простую форму, MDI форму?
  3.  Как разработать меню пользователя?
  4.  Как установить стартовую  форму?
  5.  Как установить клавишу ускоренного вызова программы?

Теоретические сведения:

Visual Basic 6.0  имеет удобное средство для разработки меню – Menu Editor, которое вызывается командой Tools / Menu Editor или комбинацией клавиш CTRL – E.

VB позволяет иметь до шести  уровней  вложенности меню. Рекомендуется использовать не более 3-х уровней вложенности (для удобства). VB позволяет создавать иерархические меню. Первый уровень – горизонтальное меню  (строка). Второй и последующие уровни – всплывающие меню.

Диалоговое окно Menu Editor приведено на рис.

Строка ввода Caption служит для ввода наименования пункта меню, выводимого на экран. После нажатия клавиши OK или щелчка мыши введенное наименование появляется в окне редактора. Если перед одним из символов наименования пункта  меню поставить символ   “&“ -  амперсенд, то появится возможность вызывать пункт меню по нажатию данной клавиши (горячей клавиши). Символ,  перед которым стоит знак “&”, подчеркивается.

Строка ввода Name   служит для ввода имени пункта меню, которое будет использоваться в программе для обработки событий. Перед именем пункта меню рекомендуется ставить префикс mnu, например, mnuFile. Программа не позволит выйти из редактора, пока всем пунктам меню не будут присвоены имена.

Окно Index используется в том случае, если  имеется несколько пунктов меню с одинаковыми именами или надо сделать пункты меню частью массива элементов управления.

Окно Shortcut позволяет назначить каждому пункту меню комбинацию клавиш для быстрого вызова команд меню: Ctrl + клавиша, Shift +  клавиша и др. При открытии списка появится список быстрых клавиш, из которого надо выбрать нужный.

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

Окно  NegotiatePosition – служит для определения способа отображения меню на экране, когда один из связанных объектов приложения активен: не показывать, слева, справа, по центру.

Флажок Checked. Если значение данного свойства равно True, то возле соответствующего пункта меню появляется галочка. Это сигнализирует о том, что соответствующий параметр выбран.

Флажок Enabled. Определяет доступность данного пункта меню. Если его значение False , то пункт меню недоступен.

Флажок Visible. Данное свойство определяет, будет ли виден на экране соответствующий пункт меню. При разработке приложения можно предусмотреть несколько наборов меню, которые должны появляться на экране в соответствующие моменты времени. Например, если в приложении не  открыто ни одно окно, меню Window не должно появляться на экране.

Флажок WindowList. Данный флажок  служит для автоматического формирования списка открытых окон, являющихся элементами многодокументного интерфейса (MDI ). Установка этого флажка для элемента управления меню верхнего уровня приведет к тому, что в данном элементе будет автоматически формироваться динамический список всех активных дочерних окон.

Кнопка Next  предназначена  для добавления новых пунктов меню.                 

Кнопка Insert  позволяет вставить поле для ввода нового пункта меню.

Кнопка Delete  служит для удаления выделенного пункта меню.

Пункты меню, близкие по назначению целесообразно группировать, отделяя их от других пунктов меню горизонтальной чертой – разделительная линия (Separator bar). Эта черта создается так же, как и другие элементы управления меню, но вместо наименования пункта меню (свойство Caption) вводится дефис (-). Имя можно присвоить произвольно.

Изменение уровня вложенности элементов меню осуществляется с помощью кнопок и . Первая кнопка понижает уровень, вторая – повышает.

Кнопки и служат для перемещения выделенного пункта меню.

Понятие о MDI-форме

MDI–форма - это многодокументный интерфейс, предназначенный для  организации взаимодействия нескольких  независимых форм.

MDI-форма является родительской формой или контейнером для  других  (дочерних) форм. Создание MDI-формы осуществляется командой Project, Add MDI Form.

При запуске программы с MDI-формой программа автоматически устанавливает  размеры дочерних окон, которые могут оказаться меньше, чем при настройке и поэтому часть объектов активной формы может быть невидимой. Чтобы избавиться от этого недостатка, необходимо в обработчике события Load каждой формы явно указать размеры и положение формы в окне, например:

Private Sub Form_Load()

     Me.Height = 2745

     Me.Width = 3090

Me.Top = (MDIForm1.ScaleHeigth – Me.Heigth) / 2

Me.Left = (MDIForm1.ScaleWidth – Me.Width) / 2  

     End Sub

Если  одна из форм максимизируется, то и все последующие открываемые форму будут развернуты на все окно. Чтобы этого не происходило, необходимо при закрытии максимизированной формы приводить ее размеры в нормальное состояние.  Для этого в обработчик события кнопки ВЫХОД формы надо поместить следующий код:

Private Sub mnuExit_Click()

     Me.WindowState = 0

     Unload Me

End Sub

Работа с дочерними формами

Чтобы обычная форма стала подчиненной MDI-форме (дочерней  формой), значение ее свойства MDIChild необходимо установить  в True.

Дочерние формы показываются с помощью метода Show, например:

Private Sub mnuVvod_Click()

    frmVvod.Show

End Sub

Управление открытыми формами:

-  установите флажок WindowList для элемента меню Window;  

- введите меню второго уровня в меню Window: каскадом, горизонтально, вертикально. Управление окнами осуществляется с помощью метода  Arrange. Кроме того,  VB имеет четыре константы для управления окнами: VbCascade – размещение окон каскадом, VbTileHorizontal – размещение окон горизонтально, VbTileVertical - размещение окон вертикально, VbArrangeIcons – пиктограммы всех минимизированных окон располагаются по нижнему краю родительской формы. Последнее свойство реализуется с помощью кнопки системного меню Минимизация:

- поместите в обработчики события Click  этих пунктов меню  объектный код следующего вида:

     имяMDI-формы.Arrange константаVisualBasic

Например:

 Sub mnuCascade_Click

        MDIForm1.Arrange VbCascade

  End Sub

  Sub  mnuHorizontal_Click

        MDIForm1.Arrange VbTileHorizontal

  End Sub

  Sub  mnuVertical_Click

        MDIForm1.Arrange VbTileVertical

  End Sub

Чтобы указать форму,  которая должна стартовать первой, щелкните правой кнопкой мыши в окне проекта и выберите из контекстного меню команду  Project Properties.  На вкладке  General   в окне Startup Object выбрите имя стартовой формы.


Рис. Редактор меню Menu Editor


 

А также другие работы, которые могут Вас заинтересовать

23876. Задонщина: образная система 26.5 KB
  СОДЕРЖАНИЕ:Дмитрий ИвановичДонской и его брат Владимир Андреевич сидят на пиру с воеводами и оповещают всехчто Мамай зочет напасть на Русьпризыв к объединению народа.войка сходятсябьются с утра и до полудняочень много убито русских войноввсе жены плачутв тот же день на рождение святой Богородицы разгромили христианские полки татардалее бегство татарСлава Донского и его братаДонской просит посчитать погибшихмолитсяпросит прощения у мертвых и возвр в МосквуНет радости от победыпотери очень великиболь от победы заглушает...
23877. Задонщина и Слово о полку Игореве 26 KB
  Задонщина и Слово о полку ИгоревеЗадонщина ориентирована на Слово о Полку ИгоревеЗадонщиназеркальное отражение Словапротивоположноефинал инойчем в слове. Слово сначала победа потом поражение З наоборот.
23878. Слово о Меркурии Смоленском 33.5 KB
  содержание:Был в городе Смоленске один человек молодой годами по имени Меркурий благочестивый в наставленьях господних обучавшийся им день и ночь славный примерной жизнью постом и молитвой сияющий будто звезда богоданная в мире этом. И придя с великою ратью под богоспасаемый город Смоленск стал тот царь от города в тридцати поприщах и многие святые церкви пожег и христиан убил и решил непременно захватить город этот. Жители впали в великую скорбь неисходно пребывали в соборном храме святой Богородицы смиренно взывая с плачем...
23879. Послание архиепископа новгородского Василия ко владыке тверскому Федору о рае 26.5 KB
  Послание о земном рае читается в Софийской первой и Воскресенской летописях под 1347гСвое послание Василий пишет в Тверьузнав о распревозникшей среди тверичей по вопросу о существовании раяСущют 2 представляения о рае:рай находится на землев другом мирекак духовное понятиесугубо мысленноеВасилий убеждает Федора в сущ.нигде не сказаночто земной рай погибон создан богома все дела божьинетленныв Иерусалиме видел калиткукот не двигается с тех поркак Иисус ее претворил не до концаесть ад на земленовгородские ватаги видели вход в...
23880. Сказание об Индийском царстве 27 KB
  Сказание рисует сказочный образ далекой Индии.все о чем человек может мечтать в повседневной жизниобеспеченностьбогатсвообилие всего вокругуверенность в настоящем и будущемвсе это представлено в сказочнопреувеличенном видеИоанн пишетчто он царь над царямии ему подченено 3300царейцарские палаты грандиозны и с земными не могут вступать в сравнениеинд царство населяют не только обычные людино и самые невероятные человеч существарогатыетрехногиемногорукие и тдфантастичен животный мирв Индии есть все и при это нет ни тятяворани...
23881. Литературно-этикетный канун жития. Житие Феодосия Печерского 29 KB
  Житие Феодосия Печерского.Житие ФЕОДОСИЯ ПЕЧЕРСКОГОПмятник древнерусской литературы написанный преподобным Нестором Летописцем.Одним из древнейших русских монастырей был киевопечерскийбольшую роль в истории монастыря сыграл его постриженика затем игуменФеодосийПамятник рассказывает о жизни игумена КиевоПечерского монастыря преподобного Феодосия начиная от его рождения прихода в монастырь до игуменства и смерти.Житие Феодосия Печерского типичное монашеское житие рассказ о благочестивом кротком трудолюбивом праведнике вся жизнь...
23882. Творчество Епифания Премудрого. Житие Стефана Пермского 22.5 KB
  Житие Стефана ПермскогоЕпифаний родился в Ростове в первой половине 14века.Перу Епифания принадлежат 2 жития:Житиве Стефана Пермского и Житие Сергия Радонежского.доводит литературноэтикетный канон до совершенствау него 2ой этапа 1ый этапутверждение канонаЖития Феодосия Печерского и Алексияпышность языкамножество ярких деталейндивид стильЕпифаний неск раз определяет характер писательского труда как плетение словессближение звуковой формы слова и его смыслаМножество повторовпричастных оборотовритмика речитрадиционные метафорыЕпиф...
23883. Творчество Епифания Премудрого.Житие Сергия Радонежского 26.5 KB
  На сороковой день мальчика принесли в церковь крестили и дали ему имя Варфоломей. Они быстро научились грамоте а Варфоломей не мог. Варфоломей рассказал ему о своих неудачах в учебе и попросил помолиться о нем. Старец дал отроку кусок просфоры и сказал что отныне Варфоломей будет даже лучше знать грамоту чем его братья и сверстникитак потом все и будетмотив исполнения желания Мальчик уговорил священника зайти к его родителям.
23884. Хождение за три моря Афанасия Никитина 55 KB
  Билет 36Билет 38Повесть о Петре и ФевронииПовесть о ПиФ была написана в 16 векев век второго монументализма хотя по содержанию и духу она ближе к 15 веку веку русского предвозрождения когда осознавалась ценность человека единство человека и Бога. Жена так и сделала и змей проговорился: Смерть мне суждена от Петрова плеча и от Агрикова мечаБыл у Павла брат Петр и он согласился помочь точнее ему на роду написано сразиться со змеем но где найти Агриков меч они не знают. Один раз Петр в одиночестве пришел в церковь и отрок показал...