В_лр07

advertisement
Лабораторная работа №07 по дисциплине
"Высокоуровневые методы информатики и программирования"
ТЕМА: ИСПОЛЬЗОВАНИЕ СПИСКА.
СОЗДАНИЕ И ИСПОЛЬЗОВАНИЕ ПАПОК
1. В Вашей папке создайте папку с именем В_лр07, совпадающим с именем файла с этим
заданием, и затем скопируйте файл с заданием в эту папку.
2. При выполнении задания создавайте в папке В_лр07 для каждой программы папку с
именем, по смыслу соответствующим действиям, выполняемым составляемой программой, и
сохраняйте все файлы, имеющие отношение к этой программе, в этой созданной папке (имена
сохраняемых файлов должны отличаться от имен, присваиваемых по умолчанию, и должны по
смыслу соответствовать действиям, выполняемым составляемой программой, причем
рекомендуется, чтобы имя модуля отличалось от имени проекта цифрой, соответствующей номеру
версии модуля).
3. ПРИ ВЫПОЛНЕНИИ СЛЕДУЮЩИХ ЛАБОРАТОРНЫХ РАБОТ ДЕЙСТВУЙТЕ
АНАЛОГИЧНО ПРЕДЫДУЩЕМУ.
ИСПОЛЬЗОВАНИЕ СПИСКОВ
4. Список строк TListBox
с вкладки Standard окна "Tool Palette" предназначен для
выбора из него строк.
Ниже перечислены основные свойства списка TListBox и приведены краткие описания
этих свойств.
Свойство
Описание
Name
Имя списка (обычно ListBox1 или ListBox2, ListBox3
и т.д.). В операторах программы используется для доступа к свойствам и
методам списка.
Items
Ввод текста в строки списка с использованием на стадии
проектирования приложения окна специального редактора строк
StringListEditor (Рисунок 1).
Рисунок 1
При использовании свойства Items в операторах программы для
доступа к значениям строк необходимо использовать его подсвойство
Strings и указывать номера строк, начиная с нуля, например,
a:=ListBox1.Items.Strings[0];
ListBox1.Items.Strings[1]:=b;
ListBox1.Items.Strings[2]:=a+ListBox1.Items.Strings[1];
Count
Количество строк в списке TListBox.
Свойство доступно только во время выполнения программы.
Значение этого свойства на единицу больше номера последней строки
списка, так как эти строки нумеруются, начиная с нуля. Это значение может
быть использовано для добавления к списку новой строки, при этом
значение свойства автоматически увеличивается на единицу.
Например, если до выполнения оператора
ListBox1.Items.Strings[ListBox1.Count]:='Новая строка';
значение ListBox1.Count равнялось 10, то после выполнения этого
оператора это значение станет равно 11.
MultiSelect
Определяет возможность выбора (выделения) нескольких строк списка
(указателем "мыши" при нажатой клавише Ctrl).
По умолчанию значение свойства равно False (выбор нескольких
строк невозможен и возможен выбор только одной строки).
ExtendedSelect
При значении свойства MultiSelect, равном True, определяет
возможность выбора (выделения) интервала строк при нажатой клавише
Shift).
Selected[i]
Свойство-массив для определения номеров выбранных (выделенных)
строк списка. Если значение Selected[i] равно True, то строка выбрана
(выделена).
Свойство доступно только во время выполнения программы.
ItemIndex
Значение индекса выбранной (выделенной) строки (при значении
свойства MultiSelect, равном False).
Свойство доступно только во время выполнения программы. По
умолчанию значение свойства равно -1 (ни одна строка не выбрана).
Sorted
Определяет необходимость автоматической сортировки строк списка в
алфавитном порядке.
Font
Шрифт сразу всего текста в списке.
Color
Цвет фона списка.
Enabled
Признак доступности списка (если значение свойства равно True, то
список доступен для выбора строк, если False – то недоступен).
Align
Определяет выравнивание списка внутри клиентской области формы
(области формы без учета высоты заголовка и толщины границ формы).
По умолчанию значение свойства равно alNone, и при запуске
приложения список без изменения размеров остается там же, где он был
размещен во время проектирования. При этом значении свойства нет
ограничений на изменение положения списка и его размеров.
При значениях свойства alTop или alBottom список занимает по
ширине всю свободную верхнюю или, соответственно, всю свободную
нижнюю часть клиентской области формы без возможности изменения
ширины списка.
При значениях свойства alLeft и alRight список занимает
по высоте всю свободную левую или, соответственно, всю свободную
правую часть клиентской области формы без возможности изменения
высоты списка.
При значении свойства alClient список занимает всю свободную
часть клиентской области формы без возможности изменения размеров
списка.
Top
Расстояние в пикселях от верхнего края клиентской части формы до
верхнего края списка.
Left
Расстояние в пикселях от левого края клиентской части формы до
левого края списка.
Height
Высота списка в пикселях.
Width
Ширина списка в пикселях.
Visible
Признак видимости списка. Если значение свойства равно True, то
список является видимым, если False – невидимым.
Hint
Текст (подсказка), который появляется рядом с указателем "мыши",
указывающим на список (для появления текста необходимо, чтобы значение
свойства ShowHint было равно True).
ShowHint
Признак разрешения появления текста (подсказки), определяемого
значением свойства Hint. Если значение свойства ShowHint равно True,
то текст появляется, если False – не появляется.
Наиболее характерными свойствами списка TListBox являются свойства Items,
MultiSelect, ExtendedSelect, Sorted.
Процедуры обработки событий, имеющие отношение к работе со списком, создаются, как
правило, для событий, связанных с другими компонентами, например, с кнопками (при нажатии
на кнопку может происходить, например, копирование выделенной строки списка в текстовое
поле).
Для добавления строк к списку может быть использован метод AddItem, например, для
добавления строки 12345 можно использовать оператор:
ListBox1.AddItem('12345',ListBox1);
Для удаления выбранных (выделенных) строк списка может быть использован метод
DeleteSelected, например:
ListBox1.DeleteSelected;
при этом оставшиеся строки списка сдвигаются вверх, занимая места удаленных строк.
Для удаления всех строк списка может быть использован метод Clear, например:
ListBox1.Clear;
Каждый из упомянутых здесь методов устанавливает новое значение свойства Count,
равное количеству строк списка после использования метода.
5. Раскрывающийся список TComboBox
с вкладки Standard окна "Tool Palette"
предназначен для ввода текстовой строки в поле редактирования непосредственным вводом с
клавиатуры или выбором строки в это поле редактирования из раскрывающегося списка.
Ниже перечислены основные свойства списка TComboBox и приведены краткие описания
этих свойств.
Свойство
Описание
Name
Имя списка (обычно ComboBox1 или ComboBox2, ComboBox3 и т.д.). В
операторах программы используется для доступа к свойствам и методам
списка.
Text
Текст, находящийся в поле редактирования, который по умолчанию
совпадает со значением свойства Name – например, ComboBox1, но обычно
сразу заменяется на иное значение, которое по умолчанию должно находиться
в этом поле.
Во время выполнения приложения в это поле может выбираться любая из
строк списка.
При вводе и редактировании текста в поле редактирования во время
выполнения приложения можно использовать команды контекстного меню и
соответствующие им стандартные сочетания клавиш для выполнения обычных
операций, связанных с редактированием фрагментов текста.
Items
Ввод текста в строки списка с использованием на стадии проектирования
приложения окна специального редактора строк StringListEditor
(Рисунок 1).
При использовании этого свойства в операторах программы для доступа к
значениям строк необходимо использовать подсвойство Strings и указывать
номера строк, начиная с нуля, например,
a:=ComboBox1.Items.Strings[0];
ComboBox1.Items.Strings[1]:=ComboBox1.Text;
ComboBox1.Items.Strings[2]:=a+ComboBox1.Items.Strings[1];
Items.Count
Количество строк в списке TComboBox.
Свойство доступно только во время выполнения программы.
Значение этого свойства на единицу больше номера последней строки
списка, так как эти строки нумеруются, начиная с нуля.
ItemIndex
Значение индекса выбранной строки списка, текст которой является
значением свойства Text.
Если в поле редактирования списка проводилось редактирование
находящегося в нем текста, то значение свойства равно -1.
По умолчанию значение свойства также равно -1 (ни одна строка не
выбрана).
Sorted
Определяет необходимость автоматической сортировки строк списка в
алфавитном порядке.
Style
Определяет стиль изображения списка в зависимости от значения
свойства, например:
csDropDown – список можно раскрыть, в поле редактирования списка
может быть выбрана строка списка и в этом поле можно вводить или
редактировать текст (это значение устанавливается по умолчанию);
csDropDownList – список можно раскрыть, в поле редактирования
списка может быть выбрана строка списка, но в этом поле нельзя вводить или
редактировать текст;
csSimple – список нельзя раскрыть, в поле редактирования списка
может быть выбрана строка списка (с использованием клавиш ↑ и ↓ ) и в
этом поле можно вводить или редактировать текст.
Font
Шрифт сразу всего текста в списке.
Color
Цвет фона списка.
Enabled
Признак доступности списка (если значение свойства равно True, то
список доступен для выбора строк, если False – то недоступен).
Top
Left
Height
Эти свойства для раскрывающегося списка аналогичны соответствующим
Width
свойствам списка TListBox.
Visible
Hint
ShowHint
Наиболее характерными свойствами списка TComboBox являются свойства Items, Text,
Sorted.
Наиболее характерным событием для списка TComboBox является событие OnChange,
наступающее при любом изменении в поле редактирования списка, включая выбор строки в это
поле редактирования из раскрывающегося списка (процедура обработки этого события будет
создана, если поместить указатель "мыши" в область списка или на его значок в окне Structure
и затем выполнить двойной щелчок левой кнопкой "мыши"). В процедуре обработки этого
события можно, например, выполнять операторы программы, связанные с использованием
значения, выбранного из раскрывающегося списка (значения свойства Text этого списка).
Для добавления строк к списку может быть использован метод AddItem, например, для
добавления строки 12345 можно использовать оператор:
ComboBox1.AddItem('12345',ComboBox1);
Для удаления выбранных (выделенных) строк списка может быть использован метод
DeleteSelected, например:
ComboBox1.DeleteSelected;
при этом оставшиеся строки списка сдвигаются вверх, занимая места удаленных строк.
Для удаления всех строк списка может быть использован метод Clear, например:
ComboBox1.Clear;
Каждый из упомянутых здесь методов устанавливает новое значение свойства
Items.Count, равное количеству строк списка после использования метода.
6. На Рисунке 2 представлены примеры списков: слева – список TListBox, в центре –
раскрытый список TComboBox (значение свойства Style равно csDropDown), справа – список
TComboBox без возможности раскрытия (значение свойства Style равно csSimple).
Рисунок 2
ПРОГРАММА 7-1
7. Создайте приложение, при выполнении которого на экране появляется окно с заголовком
Списки с расположенными слева направо раскрывающимся списком TComboBox, списком
TListBox и двумя кнопками TBitBtn с надписями красного цвета Удалить, Удалить все.
Кнопки должны быть расположены между списками сверху вниз в одном ряду. Кроме того, ниже
списка TListBox должна быть расположена кнопка TBitBtn с надписью Пуск.
Раскрывающийся список TComboBox должен содержать 8 строк с теми же текстами, что и
на Рисунке 2, но расположенными в алфавитном порядке. В поле редактирования
раскрывающегося списка первоначально должен находиться текст По умолчанию.
Список TListBox должен быть пустым.
При выборе строки из раскрывающегося списка TComboBox (событие OnChange) эта
строка должна быть добавлена в алфавитном порядке в список TListBox (можно использовать
метод AddItem).
Для списка TListBox должна быть установлена возможность выделения в нем интервала
строк.
При нажатии на кнопку Удалить из списка TListBox должны быть удалены выделенные
строки с возможным сдвигом расположенных ниже строк вверх (можно использовать метод
DeleteSelected).
При нажатии на кнопку Удалить все из списка TListBox должны быть удалены все строки
(можно использовать метод Clear).
При нажатии на кнопку Пуск надпись на ней должна измениться на Стоп и должно начаться
с интервалом 0,5 секунды изменение цветов фона списков TListBox и TComboBox (свойство
Color) и цвета шрифта кнопки TBitBtn (свойство Font.Color) в соответствии с названиями и
порядком перечисления цветов в выделенных строках списка TListBox. Для цвета
По умолчанию должны использоваться устанавливаемые по умолчанию при создании
соответствующих компонентов значения свойства Color для списков (значение clWindow) и
свойства Font.Color для кнопки (значение clWindowText).
При нажатии на кнопку Стоп надпись на ней должна измениться на Пуск, изменение цветов
должно прекратиться и все изменявшиеся цвета должны принять значения по умолчанию.
Если в списке не выделено ни одной строки, то на экране должно появиться окно с
соответствующим предупреждением (Рисунок 3), что можно реализовать использованием метода
MessageBox:
Application.MessageBox('Строки не выбраны','Листы',MB_ICONSTOP)
Рисунок 3
ОТЧЕТ О ВЫПОЛНЕНИИ РАБОТЫ
8. Продемонстрируйте выполнение созданной программы в среде программирования и
независимо от нее.
_____________________________________________________________________________________
Download