Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема: Программирование задач с использованием компонентов treeview, listview




ЛАБОРАТОРНАЯ РАБОТА № 7

ТЕМА: СОСТАВЛЕНИЕ АЛГОРИТМОВ РЕШЕНИЯ ЗАДАЧ С ИСПОЛЬЗОВАНИЕМ ФАЙЛОВ ПОСЛЕДОВАТЕЛЬНОГО ДОСТУПА

ЛАБОРАТОРНАЯ РАБОТА № 6

Цель работы: Изучение методов работы с файлами последовательного доступа.

План работы: Разработать алгоритм решения задачи с использованием файла последовательного доступа.

Теоретический материал:

Последовательный файл состоит из текстовых строк ASCII-формата. Любая информация считывается или сохраняется в текстовом виде построчно. Последовательные файлы могут обрабатываться любым текстовым редактором.

Способ открытия файла с последовательным доступом (для чтения, записи или добавления) задается при вызове оператора открытия файла:

Open <ИмяФайла> For <Режим> As <Дескриптор Файла>,

где ИмяФайла определяет имя открываемого файла — это либо строка символов, заключенная в кавычки, либо выражение, значением которого является строка символов. Она представляет собой путь к открываемому файлу; режим — это режим доступа, который может иметь значения:

· Input (Ввод) — если файл открывается для чтения из него текстовых данных;

· Output (Вывод) — если файл открывается для записи в него данных, начиная с первой позиции. Вся имевшаяся в нем старая информация будет стерта;

· Append (Дополнение) — если файл открывается для записи в него данных не с первой, а с конечной позиции, так что вся имевшаяся в нем старая информация будет сохранена.

ДескрипторФайла — целое число, по которому идентифицируется открываемый файл. Файловые номера используются при выполнении файловых операций в программе.

Все открытые файлы закрываются оператором:

Close [<СписокДескрипторов>]

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

Для записи в файл используются операторы;

Print # <ДескрипторФайла>, [<СписокЗначений>] Write.# <ДескрипторФайла>, [<СписокЗначений>],

где СписокЗначений — это записанные через разделитель значения (или выражения).

Оба оператора записывают данные в файл текстовыми строками. Текстовая строка — это последовательность символов, которая заканчивается символом перехода на яовую текстовую строку или символом возврата каретки (коды 13 и 10). Текстовый файл представляет собой последовательность текстовых строк.

 

Задание.

 

 

Цель работы: Изучение методов работы с компонентами TreeView, ListView.

План работы: Разработать алгоритм обработки событий для компонентов TreeView, ListView.

Теоретический материал:

Элемент управления ListView (Табличный список) позволяет создавать список с заголовками. Кроме того, элементы списка наряду с текстом могут содержать и значки. В этом случае необходимо дополнительно создать элемент управления ImageList с растровыми изображениями значков и связать их с соответствующими элементами списка.

Элементами списка ListView являются объекты ListItem, а заголовками его столбцов — объекты ColumnHeader.

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

Перечислим основные свойства элемента управления ListView.

Свойство Описание
View Определяет режим отображения информации. Допустимые значения:
  • lvwIcon == 0 (объекты списка отображаются в виде крупных значков);
  • lvwsmallIcon == 1 (объекты списка отображаются в виде маленьких значков);
  • lvwList == 2 (объекты списка отображаются в виде маленьких значков и текста);
  • lvwReport == 3 (объекты списка отображаются в виде маленьких значков и текста).
Arrange Определяет способ упорядочивания объектов. Допустимые значения:
  • lvwNone == 0 (не упорядочены);
  • lvwAutoLeft == 1 (слева направо);
  • lvwAutoTop == 2 (сверху вниз).
GridLines Логическое свойство, которое определяет, надо ли строки и столбцы табличного списка разделять горизонтальными и вертикальными линиями.
FullRowSelect Логическое свойство, которое определяет, допустим ли выбор целой строки.
LabelEdit Допускает редактирование надписей в элементе. Допустимые значения:
  • lvwAutomatic == 0 (генерируется событие BeforeLabelEdit, когда пользователь щелкает надпись);
  • lvwManual == 1 (генерируется событие BeforeLabelEdit только когда был применен метод StartLabelEdit).
LabelWrap Логическое свойство, которое определяет, надо ли переносить надписи.
MultiSelect Логическое свойство, которое устанавливает, допустим ли выбор нескольких элементов из списка.
ColumnHeaders Возвращает семейство ColumnHeaders
  Работа с объектами семейства производится стандартными методами: Remove,Clear,Add.
  Приведем синтаксис только для метода Add.
  Синтаксис:
  Add(index, key, text, width, alignment, icon)
  • index — индекс объекта (заголовка колонки списка);
  • key — ключ, идентифицирующий объект;
  • text — отображаемый текст в заголовке;
  • width — ширина колонки;
  • alignment — устанавливает выравнивание заголовка. Допустимые значения:
  ° LvwColumnLeft == 0 (по левому краю);
  ° LvwColumnRight == 1 (по правому краю);
  ° LvwColumnCenter == 2 (по центру);
  • icon — индекс или ключ объекта из элемента управления ImageList, когда свойство View установлено равным lvwSmalllcon.
ListItems Возвращает семейство Listltems элементов табличного списка.
  Работа с объектами семейства производится стандартными методами: Remove, Clear, Add.
  Приведем синтаксис только для метода Add.
  Синтаксис:
  Add(index, key, text, icon, smallIcon)
  • index — индекс объекта (если он опущен, то считается равным на единицу больше, чем число элементов списка);
  • key — ключ, идентифицирующий объект;
  • text — отображаемый текст;
  • icon — индекс соответствующего растрового изображения из элемента управления ImageList, когда свойство View установлено равным lvwIcon;
  • smallIcon — индекс соответствующего растрового изображения из элемента управления ImageList, когда свойство View установлено равным lvwSmalllcon.
SubItems Возвращает массив строк, связанный с данным элементом списка.
  Синтаксис:
  Subltems(Индекс) [= Строка]

 

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

Итак, в форме создайте две надписи, два поля ввода (для ввода размера ссуды и числа платежей), элемент управления Slider, с помощью которого вводится либо одна процентная ставка, либо целый диапазон и элемент управления ListView, куда будет выводиться результат расчета размера выплат.

Теперь, в модуле формы наберите следующую программу:

' Переменные уровня модуля

Dim Начало As Integer

Dim Конец As Integer

Private Sub Form_Load()

Caption = "Периодические выплаты"

Label1.Caption = "Ссуда"

Label2.Caption = "Число выплат"

Text1.Text = Empty

Text2.Text = Empty

With ListView1

.View = lvwReport

.ColumnHeaders.Add Index:=1, Text:="Ставка", Width:=.Width / 2

.ColumnHeaders.Add Index:=2, Text:="Выплата", Width:=.Width / 2

.Gridlines = True

End With

With Slider1

.Min = 0

.Max = 100

.SelectRange = True

End With

End Sub

'

Private Sub Slider1_MouseDown(Button As Integer, Shift As Integer, x As Single, у As Single)

With Slider1

If Shift = 1 Then

.ClearSel

.SelStart =.Value

Начало =.SelStart

Else

.ClearSel

End If

End With

End Sub

'

Private Sub Slider1_MouseUp(Button As Integer, Shift As Integer, x As Single, у As Single)

Dim p As Double

Dim k As Integer

Dim i As Integer

Dim A As Object

If IsNumeric(Text1.Text) = False Then

MsgBox "Ошибка в ссуде", vbExclamation, "Периодические выплаты"

Text1.SetFocus

Exit Sub

End If

If IsNumeric(Text2.Text) = False Then

MsgBox "Ошибка в числе выплат", vbExclamation, "Периодические выплаты"

Text2.SetFocus

Exit Sub

End If

p = CDbl(Text1.Text)

k = CInt(Text2.Text)

If Shift = 1 And Slider1.SelectRange = True Then

With Slider1

If.Value >=.SelStart Then

.SelLength =.Value -.SelStart

Конец =.Value

End If

End With

End If

ListView1.Listltems.Clear

For i = Начало To Конец

Set A = ListView1.Listltems.Add(Text:=CStr(i))

A.Subltems(1) = CStr(Format(Pmt(i / 100, k, -p), "Fixed"))

Next i

If Shift <> 1 Then

With ListView1

.Listltems.Clear

Set A =.ListItems.Add(Text:=CStr(Slider1.Value))

End With

A.Subltems(1) = CStr(Format(Pmt(Sliderl.Value / 100, k, -p), "Fixed"))

End If

End Sub

 

Задание. Разработать программное приложение с использованием компонентов TreeView, ListView.




Поделиться с друзьями:


Дата добавления: 2015-05-06; Просмотров: 450; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.038 сек.