- •Оглавление
- •Часть 1. Краткое описание Delphi 8
- •Часть 2. Технология ado для баз данных access 186
- •9.1. Общие сведения 289
- •Введение
- •Часть 1. Краткое описание Delphi
- •1. Работа со средой delphi
- •1.1. Ознакомление с delphi
- •1.2. Вкладка дизайнера формы (design)
- •1.3. Вкладка редактора кода программы
- •1.4. Окно object inspector
- •1.5. Окно project manager
- •1.6. Окно палитры инструментов
- •1.7. Создание первого проекта приложения
- •1.8. Сохранение проекта
- •1.8. Сохранение проекта
- •1.9. Компиляция
- •2. Основа языка delphi
- •2.1. Основные понятия языка
- •2.1.1. Элементы языка
- •2.1.2. Пример простой программы
- •2.1.3. Типы данных
- •2.1.4. Операции и выражения
- •2.1.5. Стандартные функции
- •2.1.6. Ввод и вывод на дисплей
- •2.1.7. Оператор присваивания
- •2.2. Операторы языка паскаль
- •2.2.1. Составной оператор
- •2.2.2. Условный оператор
- •2.2.3. Сложные условия
- •2.2.4. Оператор выбора case
- •2.2.5. Оператор цикла for
- •2.2.6. Оператор цикла while
- •2.2.7. Оператор цикла repeat
- •2.2.8. Вложенные циклы
- •2.2.9. Прочие операторы
- •2.3. Общая структура программы
- •2.3.1. Перечень разделов программы
- •2.4. Массивы
- •2.4.1. Одномерные массивы
- •2.4.2. Сортировка массивов и поиск элемента в массиве
- •2.4.3. Многомерные массивы
- •2.5. Функции и процедуры
- •2.5.1. Описание функций
- •2.5.2. Обращение к функции
- •2.5.3. Процедуры
- •2.5.4. Параметры-значения и параметры-переменные
- •2.5.5. Локальные и глобальные переменные
- •2.5.6. Pекурсия
- •2.6. Строки символов
- •2.6.1. Задание строк
- •Var имя: string[длина];
- •2.6.2. Функции и процедуры для обработки строк
- •2.7. Порядковые типы данных
- •2.7.1. Перечисляемый тип данных
- •2.7.2. Интервальный тип данных
- •2.7.3. Порядковые типы данных
- •2.7.4. Дополнение:тип данных tDateTime (дата-время)
- •2.8. Множества
- •2.8.1. Значения типа множество
- •2.8.2. Операции на множествах
- •2.9. Записи
- •2.9.1. Поля записи
- •2.9.2. Оператор with
- •2.9.3. Последовательный поиск в массиве записей
- •2.9.4. Двоичный поиск в массиве записей
- •2.10. Файлы
- •2.10.1. Основные свойства файлов
- •2.10.2. Типизированные файлы
- •2.10.3. Текстовые файлы
- •2.10.4. Поиск файлов
- •2.11. Динамическая память
- •2.11.1. Динамические переменные и указатели
- •2.11.2. Динамические списки
- •2.11.3. Деревья
- •2.12. Программные модули
- •2.12.1. Модули, формируемые пользователем
- •2.12.2. Стандартные модули
- •2.12.3. Примеры программ
- •3. Главная форма
- •3.1. Свойства главной формы
- •3.2. События главной формы
- •4. Описание некоторых компонентов
- •4.1. Компонент tpanel (панели)
- •4.2. Компонент tbutton (кнопка)
- •4.3. Дополнительные кнопки
- •4.4. Компонент tlabel (надписи)
- •4.5. Компонент tedit (Строки ввода)
- •4.6. Компонент тМето (многостроч. Поле ввода)
- •4.7. Свойства и методы класса tstrings
- •4.8. Компонент checkbox (флажок)
- •4.9. Компонент tradiobutton (кнопки выбора)
- •4.10. Компонент MainMenu (главное меню программы)
- •4.11. Компонент timage
- •4.12. Компонент tstringgrid (сетка)
- •4.13. Компонент ttimer(таймер)
- •5. Отладка программ
- •5.1. Типы ошибок
- •5.2. Отладка программы
- •5.2.1. Трассировка программы
- •5.2.2. Точки останова программы
- •5.2.3. Наблюдение значений переменных
- •Часть 2. Технология ado для баз данных access
- •6. Создание баз данных access
- •6.1. Определение понятия баз данных
- •6.2. Интерфейс программы access
- •6.3. Создание базы данных в access 2007
- •6.3.1. Создание двухтабличной базы данных
- •6.3.2. Создание базы данных с вычисляемыми полями
- •6.4. Выбop формата для новой базы данных
- •6.5. Создание пустой базы данных
- •6.6. Открытие и закрытие базы данных
- •6.7. Создание таблиц в режиме конструктора
- •6.7.1. Выбор первичного ключа
- •6.7.2. Изменение полей и таблиц
- •6.7.3. Копирование полей
- •6.7.4. Перемещение полей
- •6.7.5. Удаление полей
- •6.7.6. Операции с таблицами
- •6.8. Создание базы данных в access 2003
- •6.9. Установление связей между таблицами
- •6.10. Обеспечение целостности записей в базе данных
- •6.11. Редактирование и удаление связей
- •7. Система доступа к данным ado
- •7.1. Общие сведения
- •7.2. Компонент adoConnection
- •7.2.1. Свойства компонента adoConnection.
- •7.2.2. Методы компонента adoConnection
- •7.3.Компонент аdоТable
- •7.3.1. Свойства компонента tadoTable
- •7.3.2. Методы компонента tadoTable
- •7.4. Компонент adoQuery
- •7.5. Компонент adoDataSet
- •7.5.1.Свойства компонента adoDataSet
- •7.5.2. Методы компонента adoDataSet
- •7.5.3. Cобытия компонента adoDataSet
- •7.6. Компонент DataSource
- •7.7.Комнонент DataGrid
- •7.7.1 Cвойства компонента DataGrid
- •7.7.2. Методы и события компонента DataGrid
- •7.8. Компонент adocommand
- •8. Управление базами данных
- •8.1. Приложение для управления базами данных
- •8.2. Свойства полей базы данных
- •8.3. Редактирование базы данных
- •8.4. Сортировка данных
- •8.5. Поиск данных в базе
- •8.5.1. Фильтрация данных в базе
- •8.5.2. Нахождения информации методом Locate
- •9.1. Общие сведения
- •9.2. Основные операторы запроса
- •9.2.1. Агрегатные функции
- •9.2.2. Подзапросы
- •9.3. Операторы наполнения баз данных sql
- •9.3.1. Ввод значений
- •9.3.2. Удаление значений
- •9.3.3. Изменение значений
- •9.4. Операторы создания баз данных sql
- •9.4.1. Команда создания таблицы.
- •9.4.2. Первичные ключи таблицы
- •9.4.3. Индексы таблицы
- •9.4.4. Добавление в таблицу новых столбцов
- •10. Реализация sql- запросов
- •10.1. Компонент tadoQuery для sql- запросов
- •10.2. Форма для реализация sql-запроса
- •11. Генератор отчетов Quick Reports
- •11.1.Описание Quick Reports
- •11.2. Печать записи с помощью Quick Reports
- •11.3. Печать таблиц с помощью Quick Reports
- •394026 Воронеж, Московский просп., 14
4.13. Компонент ttimer(таймер)
Для обеспечения периодического вызова процедур используется не визуальный компонент Timer (таймер) c, который находится на вкладке System палитры компонентов
Основные свойства компонента Timer следующие:
Name - Имя компонента, используется для доступа к компоненту.
Interval - Период генерации события OnTimer, задается в миллисекундах.
Enabled - Разрешает (значение True) или запрещает (значение False) генерацию события OnTimer
Ставится компонент Timer на форму обычным образом. Однако так как компонент Timer является не визуальным, т. е. во время работы программы он не отображается на форме, так что его значок можно поместить в любом месте формы.
Компонент Timer генерирует событие OnTimer. Период события OnTimer измеряется в миллисекундах и определяется значением свойства Interval.
Значение свойства Enabled дает возможность программе "запустить" или "остановить" таймер. Если значение свойства Enabled равно, True,то событие OnTimer происходит, если - False , то нет.
5. Отладка программ
5.1. Типы ошибок
Отладкой программы называется процесс поиска и устранение ошибок, имеющихся в программе. Отладка продолжается до тех пор пока, программа не станет работать так как задумано ее автором.
Ошибки, которые могут быть в программе, можно разделить на три группы:
синтаксические;
ошибки времени выполнения;
алгоритмические.
Синтаксические ошибки, (или ошибки времени компиляции) обнаруживаются компилятором, после чего необходимо внести в текст программы изменения и повторить компиляцию.
Типичная синтаксическая ошибка – использование необъявленной переменной. При обнаружении синтаксической ошибки компилятор прекращает компиляцию, а строка с ошибкой подсвечивается и выдается краткое сообщение об ошибке.
Ошибки времени выполнения, (или исключения) возникают во время работы программы, когда программа пытается выполнить некоторое действие, которое не может быть выполнено.
Типичные примеры таких ошибок – деление на ноль и попытка открыть для чтения несуществующий файл.
При возникновении подобной ошибки в программе, запущенной из Delphi, среда разработки прерывает работу программы, и выдает соответствующее предупреждение.
Если программа запущена из Windows, то при возникновении ошибки он экране также появляется об этом сообщение.
Алгоритмические ошибки проявляются в том, что при запусках программа ведет себя нормально, однако результат работы оказывается неверный. Для устранения алгоритмической ошибку, приходится анализировать алгоритм.
5.2. Отладка программы
Отладка программы осуществляется при помощи встроенного в интегрированную среду разработки Delphi отладчика, который предоставляет возможности для поиска и устранения ошибок в программе. Отладчик позволяет выполнять трассировку программы, отслеживать значения переменных, контролировать выводимые программой данные.
5.2.1. Трассировка программы
Трассировка — это процесс выполнения программы, последовательно оператор за оператором с остановкой после выполнения каждого оператора.
Таким образом, трассировка дает возможность программисту видеть какие именно операторы выполняются реально.
Delphi обеспечивает два режима трассировки:
без захода в процедуру (Step over)
и с заходом в процедуру (Trace into).
Режим трассировки без захода в процедуру выполняет трассировку только главной процедуры, трассировка подпрограмм не выполняется, вся программа выполняется за один шаг.
В режиме трассировки с заходом в процедуру ведется трассировка всей программы, т. е. по шагам выполняется не только программа, но и все подпрограммы.
Чтобы выполнить трассировку, необходимо из меню Run выбрать команду Step over (F8) или Trace into (F7). Каждой раз при этом будет выполняться один оператор программы.