12728

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

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

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

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

Русский

2013-05-03

64 KB

24 чел.

Лабораторная работа № 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


 

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

27005. Понятие и признаки правонарушений 3.82 KB
  Правонарушениевиновное поведение праводееспособного индивидакоторе противоречит предписаниям норм правапричиняет вред другим лицам и влечет за собой юридическую ответственность. строго определенные признакипозволяющие отличить правонарушение от нарушений других нормобщественного приличия: 1 такое поведение человекакоторое выражается в ДЕЙСТВИИ или БЕЗДЕЙСТВИИдолжен был совершить определенные действияпредусмотренные нормой правано не совершил их. 2 такое поведение человекакоторое противоречит предписаниям ПРАВАПРОТИВОПРАВНОЕ...
27006. Построение концептуальной модели данных 111.5 KB
  Построение концептуальной модели данных. Цель работы: приобретение практических навыков анализа предметной области информационных задач и построения концептуальной модели базы данных. Общие положения Проектирование базы данных БД одна из наиболее сложных и ответственных задач связанных с созданием информационной системы ИС. В результате её решения должны быть определены содержание БД эффективный для всех её будущих пользователей способ организации данных и инструментальные средства управления данными.
27007. Логическое проектирование базы данных 41 KB
  Логическое проектирование базы данных. Цель работы: приобретение практических навыков создания логической модели базы данных. Решение этой задачи существенно зависит от модели данных поддерживаемой выбранной СУБД. Будем рассматривать логическое проектирование БД для реляционной модели данных так как современные СУБД реляционные.
27008. Физическое проектирование базы данных 28 KB
  Физическое проектирование базы данных. Цель работы: приобретение практических навыков создания физической модели базы данных. Создание физической модели базы данных: внутренняя схема это этап на котором на основании логической модели базы данных создается физическая структура базы данных зависимая от ее реализации. На этом этапе выполняется преобразование отношений логической модели реляционной базы данных в команды создания объектов физической базы данных в результате чего создается так называемая внутренняя схема базы данных.
27009. Создание базы данных в СУБД SQL Server 61.5 KB
  Servic Manager. Для каждой логической базы даниых SQL Server создает две файла: один для объектов, а другой для журнала транзакций (операций). Создание новой базы данных. Новую базу данных можно создать с помощью команды New Database из контекстного меню папки Databases. Также можно воспользоваться мастером Create Database Wizard (Tools\Wizards\Database\).
27010. Реляционные языки 95.5 KB
  Например составьте список все студентов со средним баллом превышающим 4 σSRBAL 4STUDENT Проекция операция над одним отношением. Например создать список среднего балла студентов с указанием атрибутов FIO NGR SRBAL ПFIONGRSRBALSTUDENT.Получить список номеров читателей которые в срок не сдали книги 6.Получить список книг которые ни разу не брали читатели 8.
27011. Построение запросов с использованием обобщающих функций 86 KB
  Таблица 3: onum номер заявки amt сумма заявкиodate дата cnum номер покупателя snun номер продавца Чтобы найти сумму на которую сделаны заявки: SELECT SUMamt FROM Orders; Подсчитать число продавцов имеющих заказы: SELECT COUNTDISTINCT snum FROM Orders; Результат: 5. Подсчитать количество читателей имеющих отчество Иванович Подсчитать количество книг которое числится за каждым читателем Отыскать читателя который взял максимальное число книг. Подсчитать общее число экземпляров книг издательства Мир Подсчитать...
27012. Создание и использование представлений 77 KB
  Введение в представления. В отличии от них представления это таблицы которые содержат данные других таблиц. В действительности представления это запросы выполняемые всякий раз когда представление является объектом команды. Например: CREATE VIEW СотрудникиМН AS SELECT FROM СОтрудники WHERE №отд = ‘О2; В результате создается представление СотрудникиМН с этим представлением можно выполнять любые операции то есть формировать запросы удалять вставлять соединять с другими таблицами и представлениями.
27013. Учет расчетов с подотчетными лицами 14.51 KB
  В бухгалтерском учете операции с подотчетными лицами отражаются следующими проводками: 1 выдан аванс на командировочные расходы: Дебет счета 71 Расчеты с подотчетными лицами Кредит счета 50 Касса; 2 отражены расходы по найму жилого помещения без учета НДС: Дебет счета 44 Расходы на продажу Кредит счета 71 Расчеты с подотчетными лицами; 3 учтена сумма НДС уплаченная за найм жилого помещения: Дебет счета 19 Налог на добавленную стоимость по приобретенным ценностям Кредит счета 71 Расчеты с подотчетными лицами; 4 возврат...