У вас вопросы?
У нас ответы:) SamZan.net

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

Работа добавлена на сайт samzan.net: 2016-06-20

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 6.4.2025

Михайличенко В.Н    

Лабораторная работа №2 " Создание простых VB-приложений. Организация ввода/вывода и выбора из списков "

7/7

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

  Тема: Создание простых VB-приложений. Организация ввода/вывода и выбора из списков

Цель работы: Изучить:  свойства, методы и события управляющих элементов TextBox, ListBox.

Отчет:      файлы проекта с выполненными заданиями.

Оглавление

[1] Оглавление

[2] Класс и элемент Forma

[2.1] Задание №1

[3] Элемент TextBox

[3.1] Задание №2

[3.2] Задание №3

[4] Элемент ListBox

[4.1] Задание №3

Класс и элемент Forma

Каждая форма является экземпляром созданного вами класса. Размещаемые на форме элементы становятся ее компонентами.  Их описание автоматически записывается в специальную процедуру InitializeComponent

Эта процедура вызывается конструктором формы New (вызывается автоматически)

   

Форма имеет много свойств и может реагировать на большой набор событий

Задание №1

  1.  Создать новый проект с одной формой.
    1.  Разместить на форме текстовое поле и посмотреть процедуру InitializeComponent.
    2.  Разместить на форме комбинированное текстовое поле и посмотреть процедуру InitializeComponent.
    3.  Присвоить форме заголовок "Лабораторная работа №2" и посмотреть процедуру InitializeComponent
    4.  В кострукторе формы изменить цвет форм

          Me.BackColor = Color.Aqua.

  1.  Протестировать приложение.
    1.  Если форма активна, в текстовое поле выводить "Форма активна", в противном случае – "Форма не активна".

Для ввода новой информации могут использоваться управляющие элементы TextBox и ComboBox, а также функция InputBox.

Для выбора данных из предлагаемых альтернатив могут использоваться управляющие элементы ListBox, CheckedListBox и ComboBox.

Для вывода информации могут использоваться управляющие элементы TextBox, Label а также функция MsgBox и класс MessageBox. 

Практически все управляющие элементы имеют свойство Enabled, определяющие его доступность (True) или недоступность (False).

Элемент TextBox

Основное средство ввода и отображения текста. Может рассматриваться как миниатюрный текстовый редактор с возможностью вставки, удаления, копирования через буфер, прокручивания информации (если она не помещается в поле). По умолчанию элемент выводит на экран одну строку. Для возможности вывода нескольких строк установите свойство MultiLine в True.

Свойство ScrollBars определяет наличие полос прокрутки.

Свойство Text определяет текст, содержащийся в элементе. Его можно как считывать, так и устанавливать ( TextBox1.Text = TextBox2.Text ).

Выделение текста

Свойство SelectedText возвращает выделенный текст. С его помощью можно заменить текущее выделение на другое слово.

TextBox1.SelectedText="замена"

Свойства SelectionStart и SelectionLenght возвращают или устанавливают положение первого символа выделенного текста и его длину. Следующий код если найдет в тексте слово "Visual", то выделит его

Dim seekString As String = "Visual"

Dim textStart As Integer = InStr(TextBox1.Text, seekString)

If textStart > 0 Then

 TextBox1.SelectionStart = textStart-1

  'SelectionStart отсчитывает позиции от 0, а InStr – от 1

 TextBox1.SelectionLenght = Len( seekString)

 TextBox1.Select()  ' этот метод выделяет текст

  1.  
  2.  

          End If

Задание2

  1.  

Создать новый проект.

  1.  Присвоить форме заголовок "Лабораторная работа №2".
    1.  Создать на форме элемент GroupBox. Заголовок и цвет фона — как на рисунке.  Этот элемент используется для логического группирования элементов управления в одной рамке.

Но пока для нас он имеет чисто декоративный эффект.

  1.  Внутри  рамки создать  текстовое поле, кнопку "Selected text" и метку.  В текстовое поле записать текст  "Visual Basic". Снять выделение с текста.

         При нажатии на кнопку в тексте выделяется слово "Basic" и выделенный текст записывается в метку. У метки свойство AutoSize=True.

  1.  Протестировать приложение.
    1.  Добавить кнопку "Replace", нажатие которой заменяет выделенный текст на слово "Studio".
    2.  Протестировать приложение.

Операции с выделенным текстом

Выделенный в текстовом поле текст можно копировать в буфер вырезать и  вставлять из буфера в текущую позицию.

textBox1.Copy()

textBox1.Cut()

textBox1.Paste()

Перед вставкой надо проверить, что в буфере находится текст

Clipboard.GetDataObject().GetDataPresent(DataFormats.Text)=True

Задание №3

К форме задания №2 добавить 3 кнопки, выполняющие с выделенным  текстом операции копирования,  вырезания в буфер и замены на текст из буфера. 

При щелчке по метке с текстом "Selected text" правую метку должен выводиться выделенный в текстовом поле тест.

Замечание

Для выполнения операций копирования, вырезания и вставки можно использовать стандартные горячие клавиши Ctrl+C, Ctrl+X, Crtl+V!!!!! Отмена последнего действия с текстом — Ctrl+Z.

Элемент ListBox

Предоставляет пользователю список выбираемых альтернатив.

Пункты можно вставлять в элемент ListBox с помощью программного кода или устанавливать значение свойства Items в окне свойств.

Свойство Sorted можно устанавливать только во время проектирования. Элемент ListBox является текстовым элементом, поэтому числа хранятся и сортируются как строки (10 перед 5 т.к. 1<5). Сортируются элементы по возрастанию.

Свойство Items.Count возвращает количество элементов в списке. Используется только для чтения!

Свойство Items определяет массив (коллекцию) элементов списка: Items(0) — первый, Items(1) — второй, Items (ListBox1.Items.Count-1) — последний элемент списка.

Свойство SelectedIndex возвращает индекс выбранного элемента списка. Если из списка не выбран ни один элемент, значение SelectedIndex отрицательно (–1). Используется для чтения и записи.

Свойство SelectedItem возвращает выбранный элемент списка.

Программное выделение элемента списка

Для выделения элемента с индексом index используется метод listBox1.SetSelected(index, True).

Для снятия выделения с элемента с индексом index используется метод   listBox1.SetSelected(index, False).

Можно ли в списке выбирать несколько элементов – зависит от свойства SelectionMode, которое может принимать следующие значения

None

Нельзя выделять

One

Можно выделить только один элемент

MultiSimple

Можно выделить несколько элементов

MultiExtended

Можно выделить несколько элементов, при выделении можно использовать клавиши SHIFT, CTRL и клавиши –стрелки.

Например:

  'разрешаем выбор нескольких элементов

  listBox1.SelectionMode = SelectionMode.MultiExtended

     ' Выделяем три элемента с индексами 0, 2 и 4.

  listBox1.SetSelected(0, True)

  listBox1.SetSelected(2, True)

  listBox1.SetSelected(4, True)

Проверка состояния элемента списка

Метод GetSelected(index) возвращает True, если элемент списка с индексом i  выбран, и –False в противном случае

If listBox1.GetSelected(i) = True Then …

Доступ к коллекции выделенных элементов

Согласно справке, для  доступа к коллекции выделенных элементов используется свойство SelectedObjectCollection, которое, в свою очередь, имеет свойство Count и метод  Item(i).  Но при использовании SelectedObjectCollection  интерпретатор выдает ошибки.

Лучше использовать свойство SelectedItems, которое для списка с множественным выбором возвращает коллекцию выбранных элементов. Метод  IndexOf позволяет получить индекс элемента по его значению. Так ListBox1.Items.IndexOf("Ростов") вернет индекс элемента списка "Ростов". Если такого элемента в списке нет — вернется отрицаельное значение (-1).

Следующий код выводит  список выделенных в ListBox1 элементов и их индексов.

Dim n As Integer

       n = ListBox1.SelectedItems.Count

       Dim selList As String = ""

       Dim i As Integer

       For i = 0 To n - 1

           selList &= "Номер " &  _ ListBox1.Items.IndexOf(ListBox1.SelectedItems.Item(i)) & _

   "  " & ListBox1.SelectedItems.Item(i).ToString & "  " & vbCrLf

       Next

       MsgBox(selList)

Снятие выделения со всех элементов

  listBox1.ClearSelected()

Свойство TopIndex

Свойство TopIndex определяет индекс самого верхнего элемента, видимого в списке.  В следующем примере прокручивается список так, чтобы выделенный элемент оказался верхним в видимой части:

     If  listBox1.TopIndex <> listBox1.SelectedIndex Then

           listBox1.TopIndex = listBox1.SelectedIndex

  End If

Свойство Text  возвращает значение элемента выбранного из списка последним.

Добавление элементов в список

Добавить элемент в список можно методом Add

ListBox1.Items.Add("Ростов")

Элемент списка "Ростов" для отсортированого списка будет добавлен в алфавитном порядке, для несортированного списка — в конец.

Если надо добавить сразу несколько элементов, то, чтобы список не перерисовывался несколько раз, надо использовать методы BeginUpdate() и EndUpdate().

listBox1.BeginUpdate()  ' запрещаем перерисовку списка

'записываем в список 50 элементов

   Dim x As Integer

   For x = 1 To 50

       listBox1.Items.Add("Item " & x.ToString())

   Next x

   'Разрешаем перерисовку списка

   listBox1.EndUpdate()

Добавить несколько элементов можно методом AddRange(array)

Dim ItemObject(9) As System.Object

Dim i As Integer

  For i = 0 To 9

  ItemObject(i) = "Item" & i

Next i

ListBox1.Items.AddRange(ItemObject)

Удаление элемента с индексом i

     listBox1.Items.RemoveAt(i)

Удаление выделенного элемента

ListBox1.Items.Remove(ListBox1.SelectedItem)

Удаление элемента по значению

ListBox1.Items.Remove("Tokyo")

Очистка списка

ListBox1.Items.Clear()

Задание №3

3.1 К форме предыдущего задания добавить новый элемент GroupBox с заголовком "Задание №3"

3.2 На этом элементе разместить:

3.2.1) текстовое поле с именем txtInput;

под ним список ListBox1, в который записать 4-5 имен. Список допускает множественное выделение;

3.2.2) кнопку btnAdd, при нажатии которой строка из текстового поля добавляется в список;

3.2.3) кнопку btnRemove, при нажатии которой удаляется из списка  строка, находящаяся в текстовом поле. Если такой строки нет в текстовом поле – выводится соответствующее сообщение (MsgBox)

3.2.4) кнопку btnSelect, при нажатии которой в списке выделяется строка из текстового поля.  Если такой строки нет в текстовом поле – выводится соответствующее сообщение (MsgBox). Не забудьте убрать предыдущее выделение.

3.2.5) кнопку btnClear, при нажатии которой список очищается.

3.2.6) метку lblSelect, при щелчке которой в окно MsgBox выводится список выделенных элементов и из индексы.




1. Валентность глагола и структура английского предложения
2. 2УКР ~ 923 С 91 С91 Сучасна українська мова
3. Роль общения в психическом развитии человек
4. Проблеми ліквідації банків
5. методическое пособие Специальность- 050602 030800 ~ Изобразительное искусство Череповец 2008
6. по теме Корень степени n 1
7. Право собственности как вещное право
8. тематические взаимообусловленные действия субъектов направленные друг на друга Типы соц
9. тематического факта дневного отделения группы ИНФ970 Авилова Виталия Евгеньевича Научный руководит
10. А блуд и всякая нечистота не должны даже именоваться у вас Ефесянам 5-3