- •Министерство образования российской федерации ростовский государственный экономический университет
- •Borland delphi
- •4.1 Страница Additional 23
- •4.2 Страница Dialogs 24
- •4.3 Страница System 25
- •4.4 Страница vbx 26
- •8.3 Компоненты работы с бд. 63
- •Введение
- •1 Borland Borland Delphi. Основные характеристики продукта
- •2 Среда программирования Delphi
- •2.1 Структура среды программирования
- •2.2 Главные составные части среды программирования
- •2.3 Дополнительные элементы
- •2.4 Стандартные компоненты
- •2.5 Подробнее об Инспекторе Объектов
- •2.6 Сохранение программы
- •2.7 TButton, исходный текст, заголовки и z-упорядочивание
- •3. Управление проектом
- •3.1 Проект Delphi
- •3.2 Пункт меню “File”
- •3.3 Управление проектом
- •3.4 Обзор других пунктов меню
- •3.4.1 Пункт меню “Edit”
- •3.4.2 Пункт меню “Menu”
- •3.4.3 Пункт меню “View”
- •3.4.4 Пункт меню “Compile”
- •4 Обзор Палитры Компонент
- •4.1 Страница Additional
- •4.2 Страница Dialogs
- •4.3 Страница System
- •4.4 Страница vbx
- •5 Свойства в Delphi
- •5.1 Управление свойствами визуальных компонент в режиме выполнения
- •6. Методы в Delphi
- •6.1 Создание методов с помощью визуальных средств
- •Interface
- •Implementation
- •6.2 Передача параметров
- •Interface
- •Implementation
- •7 События в Delphi
- •7.1 Понимание событий
- •7.2 Обработка сообщений Windows в Delphi
- •8 Работа с бд в Delphi.
- •8.1.2 Алиасы
- •8.1.3 Системная информация утилиты настройки bde (bdecfg)
- •8.2 УтилитаDatabaseDesktop
- •8.3 Компоненты работы с бд.
- •8.3.1 Класс TdataSet
- •8.3.1.1 Открытие и закрытие DataSet
- •8.3.2 Навигация (Перемещение по записям)
- •8.3.3 Поля
- •8.3.4 Работа с Данными
- •8.3.5 Основные понятия о TdataSource
- •8.3.5.1 Использование tDataSource для проверки состояния бд
- •8.3.5.2 Отслеживание состояния DataSet
- •8.3.6 Создание таблиц с помощью компонента tTable
- •8.3.7 Управление tdbGrid во время выполнения
- •9 Основные понятия о запросах (queries) и транзакциях
- •9.1 Основные понятия о tQuery
- •9.2 Свойство sql
- •9.3 TQuery и Параметры
- •9.4 Передача параметров через tDataSource
- •9.5 Специальные свойства Tquery
- •10 Создание таблиц с помощью sql-запросов
- •10.1 Создание таблиц с помощью sql
- •11 Управление соединением с базой данных при помощи компоненты tDataBase и объекта Tsession
- •11.1 Класс TdataBase
- •11.2 Создание постоянного соединения с базой данных
- •11.3 Определение собственного диалога при соединении с базой данных
- •11.4 Создание локального псевдонима базы данных
- •11.5 Изменение параметров при соединении
- •11.6 Управление транзакциями
- •11.7 Объект Session
- •11.7.1 Указание сетевого протокола при соединении с бд
- •12 Утилиты для Local InterBase
- •12.1 InterBase Interactive sql
- •12.1.1 Установка соединения
- •12.1.2 Создание новой базы данных
- •12.1.3 Получение информации о структуре базы данных
- •12.1.4 Выполнение sql запросов
- •12.2 InterBase Server Manager
- •12.2.1 Резервное копирование
- •Список использованных источников
5.1 Управление свойствами визуальных компонент в режиме выполнения
Все изменения значений свойств компонент в режиме выполнения должны осуществляться путем прямой записи строк кода на языке Паскаль. В режиме выполнения невозможно использовать Object Inspector. Однако, доступ к свойствам компонентов довольно легко получить программным путем. Все, что Вы должны сделать для изменения какого-либо свойства - это написать простую строчку кода аналогично следующей:
MyComponent.Width := 35;
Вышеприведенная строка устанавливает ширину (Width) компонента в значение 35.
Если свойство Widthкомпонента еще не было равно 35 к моменту выполнения данной строки программы, Вы увидите, как компонента визуально изменит свою ширину.
Рис. 2: Изменение размеров с помощью Инспектора Объектов.
Object Inspector является удобным способом выполнения в режиме проектирования того, что может быть осуществлено программным путем в режиме выполнения. У компонента могут быть свойства, не отображаемые в окне Инспектора Объектов.
Объектно-ориентированный язык Паскаль, лежащий в основе Delphi, в качестве базового имеет принцип соответствия визуальных компонент тем вещам, которые они представляют. Свойства дают Вам иллюзию, как будто Вы имеете дело с реальными объектами, а не с их программным представлением.
Задание 4.
Разместить на форме объект Tshape, две полосы прокрутки и несколько кнопок. Программа должна в режиме выполнения изменять размер, цвет и внешний вид объектаTShape, равно как размер и цвет самой формы. Пояснения для реализации задачи см. ниже.
Рис. 3: Программа SHAPEDEM имеет 2 полосы прокрутки и несколько кнопок.
Листинг А показывает код программы SHAPEDEM. Код головного модуля этой программы мы приведем по частям - по мере его написания.
Листинг А: Исходный код программы SHAPEDEM.DPR.
program Shapedem;
uses
Forms,
Mina in 'MAIN.PAS' {Form1};
begin
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Рис.
4: Вы можете использовать полосы
прокрутки, кнопки и список для изменения
внешнего вида приложения.
Для изменения цвета окна просто выберите компонент ColorDialogиз палитры компонентов (она находится на страничке “Dialogs”) и поместите его на форму. Кроме того, поместите на форму обычную кнопку (компонентButton, находится на страничке “Standard”). Для удобства чтения с помощью Object Inspector измените имя компонента (свойствоName) с “Button1” (которое дается по умолчанию) на “FormColor”, а его заголовок (свойствоCaption) - на “Цвет формы”. Дважды щелкните по кнопке “Цвет формы” - Delphi сгенерирует заготовку метода, который выглядит следующим образом:
procedure TForm1.FormColorClick(Sender: TObject);
begin
end;
Теперь введите две простые строчки кода:
procedure TForm1.FormColorClick(Sender: TObject);
begin
if ColorDialog1.Execute then
Form1.Color := ColorDialog1.Color;
end;
Рис.
5: Диалоговое окно “Color” дает возможность
изменить цвет “во время выполнения”.
Form1.Color:=ColorDialog1.Color;
Этот код установит свойство ColorформыForm1в цвет, который был выбран с помощью диалогового окнаColorDialog1.
Та же самая техника может использоваться для изменения цвета фигуры (компонент Shape, объект TShape). Все, что Вам нужно сделать - это поместить на форму другую кнопку, изменить (при желании) ее имя на “ShapeColor”, а заголовок - на “Цвет Фигуры”, дважды щелкнуть по ней мышкой и создать метод аналогичный следующему:
procedure TForm1.ShapeColorClick(Sender: TObject);
begin
if ColorDialog1.Execute then
Shape1.Brush.Color := ColorDialog1.Color;
end;
Поместите два компонента ScrollBarна форму (находится на страничке “Standard”) и установите свойствоKindпервого компонента вsbHorizontal, а второго - вsbVertical. Переключитесь на страничку “Events” в Инспекторе Объектов и создайте заготовки метода для отклика на событиеOnChangeдля каждой полосы прокрутки. Напишите в каждом из методов по одной строчке следующим образом:
procedure TForm1.ScrollBar1Change(Sender: TObject);
begin
Shape1.Width := ScrollBar1.Position * 3;
end;
procedure TForm1.ScrollBar2Change(Sender: TObject);
begin
Shape1.Height:= ScrollBar2.Position * 2;
end;
Код, показанный здесь, устанавливает свойства Width и Height фигуры TShape в соответствие с положением “бегунка” на полосах прокрутки (сомножители 3 и 2 введены только для лучшего представления).
Последняя часть программы SHAPEDEM демонстрирует большие возможности языка Object Pascal, на основе которого построен Delphi. Вы можете ввести элементы в список компонента ComboBoxкак в режиме проектирования, так и при выполнении программы. При этом в режиме проектирования Вы можете просто ввести нужные элементы в списокItems, щелкнув маленькую кнопку с тремя точками в правой части строки Инспектора Объектов, показывающей данное свойство (Items).
Перед Вами появится диалоговое окно текстового редактора (String List Editor), в котором Вы и введете элементы (рис.6). Вы могли заметить, что список этих элементов совпадает со списком опций свойства Shapeкомпонента Shape1 (Shape). Другими словами, если Вы выделите компонент Shape1 на форме (просто щелкнув по нему) и посмотрите свойствоShapeв Инспекторе Объектов, Вы увидите список возможных видов фигур, которые может принимать данный компонент. Это как раз те самые виды фигур, которые мы перечисляли в списке у компонента ComboBox1. Этот список Вы можете найти в on-line справочнике по Delphi по контексту “TShapeType”. Или же, если Вы заглянете в исходный код классаTShape, там увидите те же элементы, формирующие перечислимый тип TShapeType:
TShapeType = (stRectangle, stSquare, stRoundRect,
stRoundSquare, stEllipse, stCircle);
Щелкните дважды на ComboBox1 и впишите в процедуру, открывшуюся в окне редактора, следующий программный код:
Case ComboBox1.ItemIndex of
1: Shape1.Shape:= stRectangle;
2: Shape1.Shape:= stSquare;
3: Shape1.Shape:= stEllipse;
………………………..
end;
Порядок пунктов должен соответствовать русским названиям, внесенным в ComboBox1.Items.