Последние новости

Переход Германии на электронные паспорта второго поколения уже не загорами

Вот уже на протяжении нескольких лет страны Евросоюза постепенно переходят на электронные паспорта...

Мы начинаем

IT Библиотека начинает свою работу

Знаете ли вы что означает ICQ...

России наверно каждый человек,который пользуется Интернетом....

все новости

Доверяем

Реклама

40.Типы интерфейсов., 12/10/2007

К списку статей

40.Типы интерфейсов. В настоящее время для приложений, разрабатываемых в среде Windows при помощи VB 6, используется три типа интерфейса: однодокументный SDI (Single-Document Interface), многодокументный MDI (Multiple-Document Interface) и интерфейс типа проводник (Explorer).
Однодокументный интерфейс - это тип интерфейса, в котором предоставляется возможность работы только с одним документом в одном окне. Для работы с несколькими документами в таком интерфейсе необходимо многократно запускать приложение. Для каждого типа данных и документов требуется своя форма и, соответственно, свое приложение с интерфейсом типа SDI. Каждый раз при запуске SDI-приложения в память загружаются одни и те же данные (меню, панель и элементы управления), выполняющие одинаковые действия, что приводит к неэффективной и медленной работе запускаемых приложений.
Есть и положительные стороны приложений такого типа интерфейса - они занимают меньше места на диске и в оперативной памяти, да и на их разработку уходит гораздо меньше времени, что также немаловажно.
mdi-интерфейс
Главная особенность MDI заключается в том, что для этого типа интерфейса можно многократно открывать форму одного вида документа для нескольких разных по содержанию документов (например, программа Microsoft Word).
Для интерфейса такого типа характерно наличие одного главного окна (MDI-окно), которое обычно именуется родительским окном, и необходимого для работы количества подчиненных (вложенных) окон, называемых дочерними. Количество открытых дочерних окон ограничено лишь возможностями компьютера.
Подчеркнем, что родительское окно для MDI-интерфейса может быть только одно, при этом оно является контейнером для всех дочерних окон. Это означает, что при минимизации родительского окна вместе с ним минимизируются и все дочерние окна.
В свою очередь, дочерние окна могут находиться только внутри родительского, то есть при раскрытии на весь экран дочерние окна раскрываются полностью только в границах родительского окна и не могут быть вынесены или перемещены за эти границы.
В состав интерфейса MDI входят следующие элементы:
главное меню;
панель инструментов с элементами управления;
главное окно приложения (MDI-окно);
дочерние окна;
элементы управления для работы с данными, расположенные в дочерних окнах;
строка состояния.
Для добавления родительской формы в проект можно выполнить одно из следующих действий:
в меню Project (Проект) выбрать команду Add MDI Form (Добавить MDI-форму);
в окне проводника нажать правую кнопку мыши и выбрать из контекстного меню команду Add, а затем значение MDI Form.
Родительское и дочернее окна имеют набор основных свойств. Доступ к этим свойствам можно получить при помощи окна Properties (Свойства). Рассмотрим некоторые из этих свойств:
BackColor - определяет цвет фона формы (выбирается из предлагаемой палитры);
BorderStyle - определяет тип обрамления, а также управляет изменениями размеров формы (дополнительно определяет наличие кнопок в строке заголовка окна);
Caption - задает текст, выводимый в заголовке формы;
ControlBox - определяет наличие в левом верхнем углу окна кнопки в виде значка, открывающей оконное меню;
Font - задает шрифт в окне;
ForeColor - задает цвет выводимого в окне текста (рекомендуется использовать стандартные цвета как фона, так и текста);
Height - задает высоту формы (при конструировании автоматически модифицируется при изменении размеров при помощи мыши);
Icon - задает значок для формы;
Left - задает расстояние от формы до левого края экрана;
MaxButton - управляет наличием кнопки развертывания (максимизации) окна;
MinButton - управляет наличием кнопки свертывания (минимизации) окна;
MDIChild - управляет возможностью превращения окна типа MDI в дочернее (принимает значения True или False, по умолчанию принимает значение False);
Name - задает уникальное имя формы для использования в программных модулях и тексте кода (при назначении имени рекомендуется использовать префикс frm или mdi);
ScaleMode - задает единицу измерения свойств Width, Height, Left и Top;
ShowInTaskbar - управляет отображением значка окна на панели задач системы Windows;
Width - определяет ширину формы;
Windowstate - управляет состоянием формы при запуске и может принимать следующие значения: 0-Normal- нормальное состояние, 1-Minimized - минимизированное состояние и 2-Maximized - максимизированное состояние.
Свойства окон можно изменять в режиме проектирования. Кроме того, VB дает возможность изменять свойства окон из программы в режиме выполнения.
В отличие от дочернего, для родительского окна доступна только часть из перечисленных свойств. Например, недоступны свойства MaxButton, MinButton или ControlBox, управляющие кнопками в заголовке окна.
В свою очередь, существуют свойства, характерные только для родительского окна. Это свойства AutoShowChildren и ScrollBars. Если свойство AutoShowChildren имеет значение True (это значение используется по умолчанию), то при загрузке родительского окна автоматически загружается дочернее окно. Свойство ScrollBars определяет наличие полос прокрутки в родительском окне для дочерних окон, выходящих за границы видимости. По умолчанию это свойство имеет значение True, разрешающее отображение полосы прокрутки.
Рассмотрим основные события, которые чаще всего используются для форм.
Activate - происходит в тот момент, когда форма становится активной. Связано с событиями Initialize, Load, GotFocus. При открытии формы сначала происходит событие Initialize, затем Load, после этого непосредственно Activate и завершает процесс открытия событие GotFocus.
Click - происходит при щелчке кнопки мыши.
Dblclick - двойной щелчок кнопки мыши.
Deactivate - событие, противоположное Activate. Происходит, когда форма становится неактивной.
GotFocus - происходит при установке фокуса на активизируемой форме.
Initialize - инициализация формы.
KeyUp - происходит при нажатии клавиши на клавиатуре.
Load - происходит при загрузке формы в память до ее появления на экране.
MouseUp - происходит при нажатии кнопки мыши.
Resize - происходит при изменении размеров формы.
Unload - противоположное событию Load. Происходит перед выгрузкой формы из памяти и удалением ее с экрана.
Основные особенности дочерних окон:
дочерняя форма всегда располагается в границах родительской;
дочернюю форму нельзя переместить за границы родительской формы;
дочернее окно сворачивается только внутри родительского;
при разворачивании дочернее окно занимает все внутреннее пространство родительского окна.
Расположением дочерних окон в родительском окне можно управлять при помощи метода Arrange родительского окна и набора переменных, которые задают способы размещения дочерних окон:
VbCascade - 0 - каскадное расположение дочерних форм, при этом каждая последующая сдвинута вниз и вправо примерно на ширину заголовка формы;
VbTileVertical - 1 - расположение в виде вертикальной мозаики, при этом дочерние формы имеют высоту родительской формы и такую ширину, чтобы разместиться по всей ширине родительского окна;
VbTileHorizontal - 2 - расположение в виде горизонтальной мозаики, при этом дочерние формы имеют ширину родительской формы и такую высоту, чтобы разместиться по всей высоте родительского окна;
VbArrangeIcon - 3 - при минимизации окна располагаются на нижнем крае родительского окна.
Для добавления дочерней формы в проект необходимо выполнить команду Add Form (Добавить форму) меню Project (Проект). В качестве дочерней формы можно использовать автоматически создаваемую при выборе нового проекта форму. При этом свойство MDIChild следует установить в значение True.
Пример: создать приложение, содержащее несколько дочерних форм.
В новом проекте исходная форма будет являться дочерней. Для этого в окне свойств (Properties Window) в меню View (Вид) установим для свойства MDIChild значение True.
Зададим имя формы (свойство Name) frmChildMDI.
В поле свойства Caption введем заголовок окна Дочернее окно MDI.
Добавим в проект MDI-форму, выполнив команду Add MDI Form меню Project.
Зададим имя формы (свойство Name) mdiParentMDI.
Используя свойство Caption, введем заголовок окна Родительское окно MDI.
Для родительского окна создадим меню, используя команду Menu Editor (Редактор меню) из меню Tools (Сервис). Меню содержит два пункта: Файл и Окно. Для меню Окно зададим имя (Name) - mnuWindow.
Меню Файл содержит пункт Новая форма. Для этого пункта зададим имя (Name) - mnuFileNewForm.
Исходный вид приложения показан на рисунке.
Код программы.
Dim frmcount As Integer
Private Sub MDIForm_Load()
frmChildMDI.Caption = "Дочерняя форма 1"
frmcount = 1
End Sub
Private Sub mnuFileNewForm_Click()
Dim frmNewForm As New frmChildMDI
frmcount = frmcount + 1
frmNewForm.Caption = "дочерняя форма" + Str(frmcount)
frmNewForm.Show
End Sub
Private Sub mnuWindow_Click()
mdiParentMDI.Arrange vbtitlevertical
End Sub
Пояснение к программе: при вызове пункта Новая форма меню Файл происходит открывание нового дочернего окна. При этом заголовок каждого открываемого окна имеет разный номер. При вызове пункта Окно происходит упорядочение открытых дочерних окон (в данном примере вертикальная мозаика).


Автор: it-library, количество прочтений: 7149 Наверх


  • 39.Создание панелей инструментов с кнопками.Рассм...
  • 38.Усовершенствованное текстовое поле.Поясн...
  • 37.Объект управления.Этот ...
  • 36.Меню для текстового редактора....
  • 35.Меню для работы с файлами.Рассм...
  • 34.Создание контекстного меню.Конте...
  • 33.Создание меню.Для с...
  • 32.Работа с файлами.Функции управления папками и устройствами.

    Дл...

  • 31.Работа с файлами.Управление атрибутами файла.Для р...
  • 30.Работа с файлами.Управление двоичными файлами.Двоич...
  • 29.Работа с файлами.Управление файлами произвольного доступа.В так...
  • 28.Работа с файлами.Управление файлами последовательного доступа.
  • 27.Работа с файлами.Открытие и закрытие файлаВ VB ...
  • 26.Перемещение объекта в форме.Метод...
  • 25.Построение круговых диаграмм.Испол...
  • 24.Построение столбчатых диаграмм.Испол...
  • 23.Построение графиков функций.Для п...
  • 22.Элемент управления picture.Испол...
  • 21.Построение графических изображений.Для р...
  • 20.Функции обработки строк.
  • 19.Способы передачи параметров процедуре.VB по...
  • 18.Вызов процедур.Проце...
  • 17.Процедуры и функции.В VB ...
  • 16.Элемент управления spinbutton(счетчик).
  • 15.Элемент управления frame(рамка) и textbox(текстовое поле).Элеме...
  • 14.Элемент управления optionbutton (переключатель).
  • 13.Элемент управления checkbox (флажок).
  • 12.Элемент управления combobox (поле со списком).Элеме...
  • 11.Метод print.Этот ...
  • 10.Динамические массивыДинам...
  • 9.Массивы.
  • 8.Диалоговое окно ввода информации.Необх...
  • 7.Окно сообщения.Диало...
  • 6.Время жизни переменных.Облас...
  • 5.Область видимости переменнойПри о...
  • 4.Переменные и типы данных.Объявление типа переменной в программе.VB не...
  • 3.Переменные и типы данных.
  • 2.Операторы.Ус...
  • 1.Введение в Visual Basic

  • Часы метеостанция погодные станции погодные rst. ; лучшие кухни фото для выбора