- •А.В. Кравцов, н.В. Чеканцев, е.С. Шарова, м.С. Гынгазова, ю.А. Смышляева, э.Д. Иванчина Проблемно-ориентированная информатика химико-технологических процессов
- •Введение
- •1. Общая характеристика языков программирования
- •2. Основы программирования на языке turbo pascal
- •2.1. Оператор присваивания
- •2.2. Программирование линейных алгоритмов
- •2.3. Программирование разветвляющихся алгоритмов. Условный оператор
- •2.4. Оператор варианта
- •2.5. Программирование циклических алгоритмов
- •2.6. Одномерные массивы
- •2.7. Матрицы
- •2.8. Файлы
- •3. Технология программирования и модули
- •3.1. Подпрограммы
- •3.2. Использование стандартных модулей
- •3.2.1. Модуль Сrt. Работа с экраном в текстовом режиме
- •3.2.2. Модуль Graph . Работа с экраном в графическом режиме
- •3.2.3. Закрашенные области
- •3.2.4. Вывод текстовой информации
- •4. Решение функциональных и вычислительных задач химической технологии
- •4.1. Обработка экспериментальных данных
- •4.1.1 Интерполяционный многочлен Лагранжа
- •4.1.2. Интерполяционный многочлен Ньютона
- •4.2. Итерационные методы решения нелинейных уравнений
- •4.2.1. Метод деления отрезка пополам
- •4.2.2. Метод простых итераций
- •4.2.3. Метод Ньютона (метод касательных)
- •4.2.4. Примеры составления программ
- •4.3. Приближенное решение обыкновенных дифференциальных уравнений первого порядка
- •4.3.1. Метод Эйлера
- •4.3.2. Метод Рунге-Кутта
- •5. Основы работы с windows
- •Управление манипулятором мышь
- •Курсор ввода
- •Рабочий стол
- •Окно программы мой компьютер
- •Корзина
- •Панель задач
- •Файловая система и структура
- •5.1. Основы работы с Microsoft Word
- •5.1.1. Запуск программы Word
- •5.1.2. Элементы окна редактора Word
- •5.1.3. Набор текста
- •5.1.4. Сохранение и загрузка документов
- •5.1.5 Основы форматирования текста
- •5.1.6. Создание таблиц
- •5.1.7. Формульный редактор
- •5.2. Построение графиков с использованием Microsoft Excel
- •Формулы для вычисления линий тренда
- •6. Основы работы в среде delphi
- •6.1. Знакомство со средой Delphi
- •6.1.1. Главное окно
- •Пиктографические кнопки
- •6.1.2. Окно формы
- •6.1.3. Окно Инспектора Объектов
- •6.1.4. Окно кода программы
- •6.2. Основы визуального программирования в среде Delphi
- •6.2.1. Пустая форма и ее модификация
- •6.2.1.1. Настройка Delphi
- •6.2.1.2. Имена в Delphi
- •6.2.1.3. Изменение свойств формы
- •6.2.1.4. Размещение нового компонента
- •6.2.2. Реакция на события
- •6.2.2.1. Обработчик события OnClick
- •6.2.2.2. Динамическое изменение свойств компонента
- •6.3. Использование компонентов общего назначения
- •6.3.1. TFrame – рама и шаблоны компонентов
- •6.3.2. TMainMenu - главное меню формы (программы)
- •6.3.3. TPopupMenu - вспомогательное (локальное) меню
- •6.3.4. TLabel - метка для отображения текста
- •6.3.5. TEdit - ввод и отображение строки
- •6.3.6. TMemo - ввод и отображение текста
- •6.3.7. TButton – кнопка
- •6.3.8. TCheckBox - независимый переключатель
- •6.3.9. TRadioButton - зависимые переключатели
- •6.3.10. TListBox - список выбора
- •6.3.11. TComboBox – раскрывающийся список выбора
- •6.3.12. TScrollBar - управление значением величины
- •6.3.13. TGroupBox - панель группирования
- •6.3.14. TRadioGroup - группа зависимых переключателей
- •6.3.15. TPanel – панель
- •6.3.16. TActionList - механизм действий
- •7. Базы данных и базы знаний. Сеть интернет.
- •7.1. Системы сбора, хранения и обработки информации о протекании промышленного процесса
- •7.1.1 Общая характеристика систем управления базами данных
- •7.1.2 Иерархические субд
- •7.1.3 Сетевые базы данных
- •7.1.4 Реляционные базы данных
- •7.1.5 Среда быстрой разработки приложений Delphi
- •7.1.6 Язык sql как стандартный язык реляционных бд
- •7.1.7 Базы данных на нефтеперерабатывающих заводах. Единая тематическая витрина данных на ооо «по «Киришинефтеоргсинтез»
- •7.1.8 Базы знаний
- •7.2. Сеть интернет
- •7.2.1. Что такое Интернет
- •7.2.2. История возникновения Интернет
- •7.2.3 Интернет - компьютерные сети и сетевые протоколы. Семейство протоколов tcp/ip
- •7.2.4 Службы (сервисы) Интернет и архитектура клиент-сервер
- •7.2.5 Интернет в цифрах
- •8.1. Анализ и задание требований к безопасности
- •8. Средства защиты информации
- •8.2. Безопасность в прикладных системах
- •8.3 Проверка достоверности входных данных.
- •8.4. Проверка достоверности внутренней обработки данных
- •8.5. Аутентификация сообщений
- •8.6. Защита файлов прикладных систем
- •8.7. Контроль рабочего программного обеспечения
- •8.8. Защита системных тестовых данных
- •8.9. Безопасность в среде разработки и рабочей среде
- •8.10. Процедуры управления процессом внесения изменений
- •8.11. Технический анализ изменений, вносимых в операционную систему
- •8.12. Ограничения на внесение изменений в пакеты программ
- •Литература
- •Оглавление
- •Учебное издание
- •Проблемно-ориентированная информатика химико-технологических процессов
6.3.1. TFrame – рама и шаблоны компонентов
Этот компонент впервые введен в Delphi 5. Он определяет раму – контейнер для размещения других компонентов. В функциональном отношении компонент почти повторяет свойства формы и отличается от нее, в основном, лишь тем, что его можно помещать на формы или в другие рамы. Фактически рама представляет собой удобное средство создания шаблонов – произвольных наборов компонентов, максимально приспособленных для нужд конкретного пользователя. Раз созданный шаблон может подобно любому другому компоненту размещаться на форме или другой раме (допускается неограниченная вложенность рам). Любые изменения в базовой раме (т.е. в раме, сохраненной в палитре) тут же отображаются во всех проектах, использующих данную раму.
Первоначально проекту ничего неизвестно о, возможно, ранее созданных рамах, поэтому попытка поместить на пустую форму компонент-раму вызовет сообщение:
No frames in project. To create a frame select File | New Frame.
(В проекте нет рам. Чтобы создать раму выберите File | New Frame.)
Это сообщение и описываемая ниже методика подключения шаблонов – единственное, что отличает механизм использования шаблонов от использования стандартных компонентов.
Создадим простую раму, содержащую две кнопки – mbOk и mbCancel. Такой шаблон может пригодиться при конструировании различных диалоговых окон.
1. Создадим новый проект (File| New Application).
2. Создайте новую раму – выберите File | New Frame.
3. Поместите на раму две кнопки TBitBtn и установите следующие свойства для кнопок и рамы:
Установленные параметры создадут минимальную по размерам раму с двумя именованными кнопками. Так как свойство Anchors рамы содержит значения [akRight, akBottoms], рама будет все время отслеживать свое положение относительно правого нижнего угла контейнера, в который она будет помещена.
4. Щелкните по раме правой кнопкой мыши и выберите в локальном меню Add To Palette – на экране появится диалоговое окно с предложением сохранить модуль шаблона в дисковом файле.
5. Сохраните шаблон в файле с именем DlgBtnsF в папке для ваших программ. На экране появится окно регистрации шаблона в палитре компонентов. В окне предлагается установить для нового компонента имя класса и страницу палитры компонентов, в которую он помещен. Обратите внимание на автоматически созданное умалчиваемое имя заготовки – TFrame1Tamplate. Так как это имя будет появляться в ярлычке Hint при высвечивании компонента мышью, следует дать ему более осмысленное имя, например, TDialogButtons. И еще одно замечание: в качестве страницы палитры компонентов в окне предлагается страница Templates (шаблоны), которая отсутствует в начальном наборе страниц палитры. Если вы сохраните это имя, в Delphi будет создана новая страница компонентов.
6. Задайте имя класса шаблона и страницу его размещения, после чего щелкните по кнопке ОК - шаблон готов для использования.
7. После закрытия окна регистрации сам шаблон останется на экране. Подобно дополнительной форме его модуль стал составной частью проекта, поэтому размещение шаблона на форме не вызовет проблем.
8. Щелкните по пиктограмме на странице Standard палитры компонентов и затем по пустому месту в форме Form1 - на экране появится окно с предложением выбрать нужный шаблон. Нажмите Enter, и шаблон появится в форме так, как если бы это был любой другой компонент.
Следует отметить, что, если вы откроете новый проект и попытаетесь разместить на форме раму со страницы Standard, на экране вновь появится сообщение о том, что в проекте нет рам. Однако если вы присоедините модуль DlgBtnsF к проекту клавишами Shift-F11. Если в новом проекте попробовать установить на пустую форму компонент-шаблон со страницы Templates (или с любой другой страницы, куда он был ранее помещен на этапе регистрации), на экране появится окно с такой надписью:
The following unit: DIgBtnsF, is needed in your project to create the template. Do you wish to add it?
(Модуль DIgBtnsF необходим в вашем проекте, чтобы создать шаблон. Хотите его добавить?)
Свойства входящих в шаблон компонентов, а также свойства самого размещенного на форме шаблона можно менять, приспосабливая их к конкретным нуждам программы.
Компонент TFrame является потомком TScrollingWinControl, от которого ему достались три описываемых ниже специфичных свойства (остальные свойства, события и методы унаследованы от TWinControl):
PROPERTY AutoScroll: Boolean; |
Разрешает/запрещает автоматическую вставку полос прокрутки, если не все размещенные на раме компоненты умещаются в отведенных ей размерах. |
PROPERTY HorzScrollBar: TControlScrollBar; |
Определяет свойства горизонтальной полосы прокрутки. |
PROPERTY VertScrollBar: TControlScrollBar; |
Определяет свойства вертикальной полосы прокрутки. |
Класс TControlScrollBar, к которому принадлежат свойства HorzScrollBar и VertScrollBar, устанавливает все необходимые свойства и методы для полос прокрутки.
Свойства TControlScrollBar:
PROPERTY ButtonSize: Integer; |
Определяет размер кнопок полосы прокрутки. |
PROPERTY Color: TColor; |
Определяет цвет полосы. |
TYPE TScrollBarInc = 1..32767; PROPERTY Increment: TScrollBarInc; |
Указывает перемещение бегунка при щелчке мышью на концевой кнопке полосы. |
TYPE=(sbHorizontal, sbVertical); PROPERTY Kind: ScrollBarKind; |
Указывает ориентацию полосы (это свойство - только для чтения). |
PROPERTY Margin: Word; |
Определяет минимальное расстояние от полосы до края компонента, в котором она расположена. |
PROPERTY ParentColor: Boolean; |
Если True, цвет полосы определяется системными установками Windows. Установка значения в свойство Color приводит к автоматической установке значения False в свойство ParentColor. |
PROPERTY Position: Integer; |
Определяет положение бегунка на полосе прокрутки. |
PROPERTY Range: Integer- |
Определяет размер скроллируемой области. |
PROPERTY ScrollPos: Integer- |
Определяет положение скроллируемой области. |
PROPERTY Size: Integer- |
Определяет ширину полосы в пикселях. |
PROPERTY Smooth: Boolean; |
Если содержит True, прокрутка осуществляется стандартным образом: щелчок по концевой кнопке вызывает смещение приблизительно на 1/10 часть всей прокручиваемой области. Если содержит False, смещение определяется свойством Increment. |
TScrollBarStyle = (ssRegular, ssFlat, ssHotTrack) ; PROPERTY Style: TScrollBarStyle; |
Определяет стиль полосы: ssRegular – обычная полоса; ssFlat - плоская полоса; ssHotTrack -плоская полоса, но ее компоненты выделяться цветом при перемещении над ней указателя мыши. |
PROPERTY Thumbsize: Integer; |
Определяет ширину бегунка в пикселях. |
PROPERTY Tracking: Boolean; |
Разрешает/запрещает динамическую прокрутку при перемещении ползунка. |
PROPERTY Visible: Boolean; |
Определяет видимость полосы. |
