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




НазваниеУправляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом
страница1/9
Дата публикации17.11.2013
Размер0.92 Mb.
ТипДокументы
uchebilka.ru > Информатика > Документы
  1   2   3   4   5   6   7   8   9
Как вы узнали из предыдущего урока, приложения Visual Basic строятся на осно­ве форм. Практически любое приложение содержит формы, а на формах находятся управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом уроке мы рассмотрим самые распространенные и нужные управля­ющие элементы Visual Basic 6. В этом уроке нам не удастся подробно рассмотреть все элементы, и мы ограничимся лишь теми, с которыми вам придется работать больше всего. Не огорчайтесь! Остальные элементы будут рассмотрены в после­дующих главах.

^ Первое знакомство с управляющими элементами

Управляющие элементы (или просто элементы) — «кирпичи», из которых стро­ятся приложения в Visual Basic. Благодаря элементам ваши формы могут де­лать нечто большее, чем просто занимать место на экране. Некоторые элемен­ты, например кнопки и текстовые поля, предназначены для взаимодействия с пользователем. Другие остаются невидимыми для пользователя и выполняют вспомогательные задачи. Примером невидимого элемента служит таймер. С по­мощью элементов вы без особого труда наделите свои программы различными возможностями. Чтобы разместить элемент на форме, можно дважды щелк­нуть на нужном значке в панели элементов или же «нарисовать» элемент на форме — для этого следует щелкнуть на нем мышью и растянуть контур на форме (в этом случае перетаскивание указателя мыши определяет размеры эле­мента).

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

В комплект Visual Basic 6 входит ряд дополнительных элементов, многие из которых были усовершенствованы по сравнению с предыдущими версиями. Некоторые из них предназначены для работы с мультимедиа, другие (напри­мер, элементы Winsock и Internet Control) ориентированы на работу в Internet. Существует также несколько дополнительных элементов для работы с базами данных. Более того, теперь вы можете создавать собственные элементы ActiveX и включать их в панель элементов. Нестандартные элементы также можно рас­пространять среди других разработчиков. Более подробная информация о соз­дании и распространении таких элементов приведена в уроке 17, «Использо­вание ActiveX».

Рис. 3.1. Панель элементов Visual Basic

Кнопки

Наверное, самым распространенным управляющим элементом в приложениях для Windows являются кнопки (см. рисунок). Это в полной мере относится и к Visual Basic. Кнопки используются для решения самых разных задач — от простейшего ввода информации до вызова специальных функций, связан­ных с формами. Конечно, вам уже приходилось встречаться с кнопками хотя бы на примере ОК и Cancel в диалоговых окнах.

В ближайших разделах мы рассмотрим важнейшие свойства, методы и события этого простого, но очень полезного элемента. Общий принцип работы кнопок описан в разделе «Методы кнопок», а приведенный в нем пример поможет перей­ти от теории к практике.

ПРИМЕЧАНИЕ Напоминаю: свойства описывают атрибуты объекта. Методами называются действия, которые объект может выполнять по ва­шему приказу, а при помощи событий элемент сообщает о том, что с ним происходит.

^ Свойства кнопок

Далее перечислены все свойства кнопок. Свойства, используемые чаще других, выделены жирным шрифтом. Если вас заинтересует свойство, не описанное далее, выберите его в окне свойств и вызовите справку клавишей F1.

Appearance Enabled hWnd Style

BackColor Font Index Tablndex

Cancel FontBold Left TabStop

Caption Fontltalic MaskColor Tag

CausesValidation FontName Mouselcon ToolTipText

Container FontSize MousePointer Top

Default FontStrikethru Name UseMaskColor

DisabledPicture FontUnderline OLEDropMode Value

DownPicture ForeColor Parent Visible

Draglcon Height Picture WhatsThisHelpID

DragMode HelpContextID RightToLeft Width

Два самых важных свойства любой кнопки — Name и Caption. По значению перво­го Visual Basic отличает одну кнопку от других. Нам придется довольно часто встре­чаться со свойством Name на страницах этой книги. Свойство Caption определяет текст, который должен находиться на кнопке. Символ «амперсенд» (&) позволяет работать с кнопкой при помощи клавиш вместо щелчков мышью. Для этого сле­дует нажать клавишу Alt вместе с подчеркнутой буквой в надписи того элемента, к которому вы желаете обратиться. Кроме того, пользователь может перейти к кноп-л ке клавишей Tab и затем имитировать щелчок мыши клавишей Пробел.

ПОДСКАЗКА Вы должны хорошо разбираться в том, как работают клавиши ускоренного доступа, потому что не все пользователи предпо­читают работать с мышью. Например, те, кому приходится на­бирать большие объемы текста, не любят снимать пальцы с клавиатуры, чтобы сменить шрифт и затем продолжить ввод. Ста­райтесь при любой возможности создавать клавиши ускорен­ного доступа, и пользователям будет удобнее работать с ва­шей программой.

У кнопок имеется еще два полезных свойства — Cancel и Default. Если задать свой­ству Default значение True, пользователь сможет имитировать нажатие кнопки при помощи клавиши Enter. Если свойство Cancel имеет значение True, нажатие клавиши Esc приводит к закрытию формы.

ПРИМЕЧАНИЕ Если на форме находится несколько кнопок, лишь у одной из них свойство Default может иметь значение True; эта кнопка используется по умолчанию на данной форме. Аналогично^ лишь у одной кнопки свойство Cancel может быть равно True.

Выбирая значение свойства Style, вы можете оставить кнопку чисто текстово| или поместить на нее рисунок. Если вы хотите, чтобы в нормальном, ненажато»

остоянии на кнопке присутствовал рисунок, задайте имя графического файла в ойстве Picture. Рисунки для других состояний кнопки (заблокированного и на­жатого) задаются в свойствах DisabledPicture и DownPicture. Fiue два свойства, Enabled и Visible, позволяют ограничить доступ к кнопке. Если какое-либо из них равно False, кнопка становится недоступной. Блокировка кно­пок может пригодиться в тех случаях, когда пользователь должен выполнить определенные действия (скажем, заполнить текстовые поля) и лишь затем нажать кнопку для перехода к следующей стадии процесса.

ПОДСКАЗКА Если вы хотите заблокировать кнопку, значение False следует ~~задать для свойства Enabled, а не для Visible. В первом случае заблокированная кнопка остается на экране, и пользователь понимает, что при определенных обстоятельствах она станет доступной; во втором случае кнопка просто исчезает.

Свойство Tablndex определяет порядок перебора элементов клавишей Tab. Элемент, у которого свойство Tablndex равно 0, получает фокус первым (при условии, что он не был заблокирован или сделан невидимым). При изменении свойства Tablndex одного элемента изменяется порядок перебора и у других элементов. Если вы не хотите, чтобы пользователь мог перейти к элементу клавишей Tab, задайте свой­ству TabStop значение False; впрочем, это не помешает пользователю перейти к элементу, щелкнув на нем мышью. Чтобы исключить и такую возможность, вос­пользуйтесь описанными ранее свойствами Enabled и Visible.

^ События кнопок

Несомненно, из всех событий, связанных с кнопками, чаще всего используется Click. Ниже перечислены все события кнопок.

Click KeyPress MouseUp OLESetData

DragDrop KeyUp OLECompleteDrag OLEStartDrag

DragOver Lo'stFocus OLEDragDrop

GotFocus MouseDown OLEDragOver

KeyOown MouseMove OLEGiveFeedback

Вероятно, на первых порах вас будет в основном интересовать событие Click. Именно оно чаще всего используется для кнопок, а остальные события понадобят­ся лишь после того, как вы освоите программирование на Visual Basic. С другой стороны, вместо события Click можно воспользоваться событием MouseUp. Во мно­гих приложениях для Windows 95 используется именно это событие, поскольку после нажатия кнопки мыши пользователь может передумать и отказаться от возбуждения события Click.

^ Методы кнопок

Далее перечислены различные методы кнопок, самым распространенным из кото-Pbix является SetFocus.

Drag OLEDrag SetFocus ZOrder
Move Refresh ShowWhatsThis

Метод SetFocus используется для передачи фокуса конкретной кнопке. Например, с его помощью можно вернуться к кнопке по умолчанию после того, как будет за­кончено редактирование текстового поля на форме, В этом случае код будет вы­глядеть так:

cmdMyButton.SetFocus А располагается он обычно в процедуре события Change текстового поля.

^ Работа с кнопками

Работу с кнопками лучше всего рассматривать на практическом примере:

1. Если вы установили примеры приложений с компакт-диска Visual Basic, открой­те проект \MSDN98\98vs\1033\Samples\VB98\Controls\Controls.vbp1.

ПРИМЕЧАНИЕ Если вы еще не установили примеры с компакт-диска, обрати-тесь к разделу «Работа с несколькими проектами» из урока 1 — в нем рассказано, как это сделать. Эти примеры понадобятся вам во многих упражнениях этого урока.

2. Запустите приложение командой Run > Start. В диалоговом окне Control Examples нажмите кнопку Test Buttons — на экране появится форма.

3. Нажмите кнопку Сменить сигнал и проследите, как изменяется сигнал светофо­ра. Когда тестирование будет завершено, нажмите кнопку Закрыть. Мы усовершенствуем это приложение и поместим изображение светофор прямо на кнопку Сменить сигнал.

4. Завершите работу приложения командой Run >• End.

5 Активизируйте форму Test Buttons, дважды щелкнув на строке frmButton в окне проекта.

6 Растяните кнопку Сменить сигнал до таких размеров, чтобы в ней могло помес­титься изображение светофора. В окне свойств установите значение свойства

Style кнопки в 1 - Graphical.

7 Задайте свойствам Visible элементов imgGreen, imgYellow и imgRed значение False.

8 Включите в процедуру события Load формы следующий фрагмент:

Private Sub Form_l_oad()

cmdChange.Picture = imgGreen.Picture End Sub

9. Измените код процедуры ChangeSignal:

Private Sub ChangeSignalO Static signal As Integer

signal = signal + 1

If signal > 3 Then signal = 1

Select Case signal Case Is = 1 Case Is = 1

cmdChange.Picture = imgYellow.Picture Case Is = 2

cmdChange.Picture = imgRed.Picture Case Is = 3

cmdChange.Picture = imgGreen.Picture
End Select
End Sub

10. Еще раз запустите программу (Run > Start). Снова нажмите кнопку Test Buttons, чтобы вызвать одноименное диалоговое окно. Теперь при нажатии кнопки Сменить сигнал изображение светофора на кнопке изменяется точно так же, как раньше изменялся рисунок над кнопкой.

Невзирая на простоту, этот пример наглядно демонстрирует основные принципы работы с кнопками. Вы можете включить в процедуру события Click другие ко­манды, чтобы кнопка выполняла дополнительные задачи. Например, если кноп­ка должна закрывать приложение, процедура Click будет выглядеть так:

Private Sub cmdChangeSignal_Click()

End

End Sub

ПОДСКАЗКА Чтобы поместить графическое изображение на кнопку, необходи­мо сначала.установить значение свойства Style в 1 - Graphical. Затем в свойстве Picture указывается имя графического файла с нужным рисунком.

элемента — текстового поля с маской или одного из событий Key... Текстовое под с маской позволяет задать шаблон, или маску ввода. Этот элемент относится i числу нестандартных, и чтобы пользоваться им, необходимо включить его в па нель элементов. В электронной документации Microsoft Developer Network, кот рая поставляется на компакт-диске Visual Basic, имеются полные описания все нестандартных элементов.

^ Методы текстовых полей

Ниже перечислены методы текстовых полей.

Drag LinkRequest OLEDrag ShowWhatsThis

LinkExecute LlnkSend Refresh ZOrder

LinkPoke Move SetFocus

Большинство методов используется довольно редко, однако методы Link... приго­дятся, если ваше текстовое поле участвует в динамическом обмене данными через протокол DDE (Dynamic Data Exchange). DDE позволяет установить связь меж­ду приложениями и по мере того, как пользователь работает с одним приложени­ем, посылать информацию другому приложению. К сожалению, детальное рассмот­рение DDE выходит за рамки книги. Если эта тема заинтересует вас, обращайтесь к электронной документации.

Напротив, метод SetFocus очень часто используется в приложениях. Когда пользо­ватель нажимает кнопку (скажем, Обновить данные), фокус остается у кнопки. Если процедура события Click кнопки завершается методом SetFocus, то фокус можно передать текстовому полю для ввода данных, благодаря чему пользователь избав­ляется от необходимости лишний раз щелкать мышью или нажимать клавишу Tab. Оператор выглядит так:

txtMyTextBox.SetFocus

^ Работа с текстовыми полями

Следующий пример показывает, как используется на практике метод SetFocus:

1. Откройте проект \MSDN98\98vs\1033\Samples\VB98\Controls\Controls.vbp, если он не был открыт ранее.

2. Запустите приложение командой Run >• Start. В диалоговом окне Control Examples нажмите кнопку Text Box. На экране появляется форма, похожая на рис.

Устанавливая различные переключатели в рамке, можно выполнять некоторые опе­рации с левым текстовым полем. Свойство Multiline правого поля установлено в True, в этом нетрудно убедиться по внешнему виду текста. В приложениях, рабо­тающих с текстами, нередко используются текстовые поля с активизированным свойствами Multiline и ScrollBars. В таких случаях текстовое поле растягиваете на всю форму, а ее размер фиксируется (свойством BorderStyle). Если форма должна иметь переменные размеры или является дочерней формой интерфейса MDI, вам придется динамически изменять размеры текстового поля при измене­нии размеров формы. Например, можно включить следующий фрагмент в проце­дуру события Resize формы:

txtTextl.Top = frmForml.ScaleTop txtTextl.Left = frmForml.ScaleLeft txtTextl.Width = frmForml.Width txtTextl.Height = frmForml.ScaleHeight

Свойства Scale... относятся к внутренним размерам формы. Следовательно, свойства Height и ScaleHeight формы имеют различные значения. В значении ScaleHeignt не учитывается пространство, занимаемое заголовком и границами формы.

3. Завершите работу приложения и активизируйте форму f rmText в окне дизайнера. 4- Дважды щелкните на переключателе Установить курсор после 5 символа, чтобы вызвать окно программы с кодом процедуры:

Private Sub opt!nsert_Click()

установить курсор после 5 символа txtDisplay.SelStart = 5

передать фокус текстовому полю, чтобы изменения были наглядно видны txtDisplay.SetFocus End Sub

Свойство SelStart определяет начальную позицию (в символах) выделенного Фрагмента текстового поля. В данном случае выделение должно начинаться с 5-го символа. Метод SetFocus возвращает фокус .ввода текстовому полю txtDisplay.

^ 5. Откройте процедуру события Click переключателя optSelect:

Private Sub optSelect_Click()

установить курсор в начало txtDisplay.SelStart = О ' определить длину строки и выделить ' соответствующее количество символов txtDisplay.SelLength = Len(txtDisplay.Text)

' передать фокус текстовому полю, ' чтобы изменения были наглядно видны txtDisplay.SetFocus End Sub

На примере этого фрагмента видно, как выделить все содержимое текстового поля в программе. Если бы в меню присутствовала команда Select All, ее процеду­ра была бы похожа на этот фрагмент. Если вы хотите узнать, какой текст выде­лен в поле, обращайтесь к свойству SelText.

^ 6. Замените процедуру события cmdClose_Click следующей:

Private Sub cmdClose_Click()

If txtDisplay.SelLength > 0 Then

MsgBox "Выделен текст" & txtDisplay.SelText

End If

End ' Выгрузить форму End Sub

7. Запустите приложение. В диалоговом окне Text Box Properties выделите слово Multiline и нажмите кнопку Close.
  1   2   3   4   5   6   7   8   9

Добавить документ в свой блог или на сайт

Похожие:

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconПриборы серии “gsm-охрана” для автономной охранно-пожарной сигнализации
Приборы обеспечивают автоматическую передачу информации о текущем состоянии охраняемого объекта и не имеют аналогов по соотношению...

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconНовгородская область
«Валдайские зори» созданы все условия для семейного и молодежного отдыха и развлечений, а большой конференц-зал со всем необходимым...

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconI. Фазы секреторного цикла. Структурно-функциональные особенности слизистой полости рта
Секреторный цикл периодически повторяющиеся процессы, которые обеспечивают поступление из крови в клетку воды, неорганических и простых...

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

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

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconГ. В. Юсим Современные специализированные компьютерные системы, ориентированные...
...

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconВопросы: Функциональные зависимости
Лекция: Элементы теории реляционных баз данных: функциональные зависимости и декомпозиция без потерь

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconУсловия, которые не могут включаться в брачный договор
Несмотря на широкие возможности, которые в этом вопросе им предоставлены, существует ряд условий, которые в договор включаться не...

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconЛюди Ведического периода не знали болезней
Любви, полностью регулировал их процесс питания. Организм человека обеспечивался всем необходимым в нужном количестве и в самое благоприятное...

Управляющие элементы, которые расширяют функциональные возможности при­ложения и обеспечивают его всем необходимым для взаимодействия с пользова­телем. В этом iconКорпорация intel представляет инновационные технологии для пк, обеспечивающие...
Корпорация intel представляет инновационные технологии для пк, обеспечивающие новые возможности для цифрового дома и офиса

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
uchebilka.ru
Главная страница


<