Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Использование табличных компонентов




Табличное представление данных встречается в приложениях очень широко. Один из основных компонентов, используемых для этих целей, является компонент StringGrid (страница Additional) для размещения текстовых строк. Для освоения этого компонента требуется создать несколько приложений.

1. Первое приложение должно в наглядной форме демонстрировать поиск в случайном неупорядоченном массиве целых чисел. Основные возможности создаваемого приложения:

· задание числа строк и столбцов в неупорядоченном массиве

· задание границ диапазона генерируемых чисел

· задание искомого числа

· установка режима поиска (первое появление искомого числа, последнее появление искомого числа, все вхождения искомого числа)

· наглядное отображение в таблице найденных чисел

 

 

Шаги создания приложения

· Установить свойства Caption и Name формы, а также – свойство WindowState в значение wsMaximized для автоматического распахивания окна во весь экран при запуске приложения

· Разместить на форме управляющую панель с выравниванием в нижней части формы, а затем разместить в верхней части формы компонент StringGrid с выравниванием по клиентской области

· Для этого компонента установить свойства FixedCols и FixedRows в 0 (нет фиксированных строк и столбцов для размещения заголовков), свойства ColCount и RowCount в любые подходящие значения (например – 20 и 10) для задания начальной размерности таблицы, свойства DefaultColWidth и DefaultRowHeight в значения близкие к 30 и 24 (это подходящие значения для отображения небольших числовых данных)

· Разместить на нижней (управляющей) панели компонент GroupBox для задания параметров таблицы при выполнении программы; в этом компоненте разместить кнопку с текстом Установить, два компонента SpinEdit со страницы Samples для удобного ввода числа строк и столбцов и две надписи

· Для обоих компонентов SpinEdit установить следующие свойства: MinValue =1, MaxValue = 50 (число строк и столбцов таблицы будет меняться от 1 до 50), Increment = 1 (шаг изменения значения при одном щелчке)

· С помощью ИО переключиться на форму, выбрать закладку Events и создать обработчик события OnCreate (это событие возникает при первоначальном создании формы при запуске приложения), в котором ввести код для установки начальных значений компонентов SpinEdit в начальные значения числа строк и столбцов:

SpinEdit1.Value:= StringGrid1.RowCount;

SpinEdit2.Value:= StringGrid1.ColCount;

· Создать обработчик кнопки Установить для формирования таблицы в соответствии с введенными значениями числа строк и столбцов; код этого обработчика обратен только что приведенному коду

· Разместить на нижней (управляющей) панели еще один компонент GroupBox для задания параметров генерации массива случайных чисел при выполнении программы; в этом компоненте разместить кнопку с текстом Создать, два компонента SpinEdit для удобного ввода границ генерируемого массива и две надписи

· установить свойства компонента для задания нижней границы так, чтобы минимальное значение было –100, максимальное +100, начальное значение – 0, а шаг изменения = 10

· установить свойства компонента для задания верхней границы так, чтобы минимальное значение было 0, максимальное 1000, начальное значение – 100, а шаг изменения = 10

· Создать обработчик кнопки Создать для генерации случайной таблицы заданной размерности в заданном диапазоне чисел; обработчик должен прежде всего сравнить нижнюю и верхнюю границы диапазона генерации и выдать сообщение при невозможности генерации; сама генерация выполняется двойным циклом по числу строк и столбцов (использовать соответствующие свойства компонента StringGrid) и состоит в заполнении внутреннего свойства-массива ячеек Cells случайными значениями из заданного диапазона (использовать свойства Value соответствующих компонентов SpinEdit); при оформлении цикла учесть следующие особенности:

o в массиве Cells сначала идет номер столбца, а потом – номер строки

o нумерация строк и столбцов начинается с НУЛЯ

o каждое случайное число надо преобразовать в строку с помощью функции IntToStr

· Разместить на нижней (управляющей) панели компонент RadioGroup для задания режима поиска при выполнении программы; в этом компоненте разместить три радиокнопки с необходимыми надписями; установить во включенное состояние кнопку для режима “Искать первое вхождение заданного числа”

· Наконец, в правой части управляющей панели разместить окно-редактор для ввода искомого значения и соответствующую надпись, а также кнопку Искать для запуска процесса поиска

· Создать код обработчика кнопки Искать, который должен:

o проверить на пустоту свойство Text компонента Edit и либо вывести соответствующее сообщение (например – “Чаво ишшем-то, а?”), либо преобразовать этот текст в число с помощью функции StrToInt

o проверить, какая радиокнопка режима поиска включена для вызова одного из трех вариантов алгоритма поиска

o выполнить сам поиск по одному из трех вариантов

o вывести результат поиска (номер строки и номер столбца) в окно сообщений с помощью ShowMessage

· При организации поиска можно следовать следующим рекомендациям:

o поиск во всех трех случаях выполнять двойным циклом For – To – Do по строкам и столбцам (не забыть, что в массиве Cells сначала задается номер столбца, а потом – номер строки)

o при обнаружении первого совпадения вывести сообщение и прекратить поиск с помощью стандартной функции Exit

o для поиска последнего вхождения надо запоминать координаты всех найденных совпадений, установив перед поиском эти координаты в фиктивные значения (-1); после завершения двойного цикла либо вывести координаты последнего вхождения, либо сообщение об отсутствии искомого элемента

o аналогично можно найти все вхождения, просто выводя координаты при обнаружении совпадения

· После сохранения проекта выполнить его и проверить работоспособность.

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных