- •Символьный и строковой типы.
- •Операции над символами и строками
- •Преобразование строк
- •Строки в Delphi
- •Множества и операции с ними
- •Модули в Delphi
- •Событийно – ориентированное программирование
- •Объективно-ориентирование программирование
- •Классы и объекты
- •Объявление класса
- •Абстрактные методы
- •Перегружаемые методы
- •Структура проекта Делфи
- •Визуальное программирование
- •Реакция на события.
- •Компоненты Делфи
- •Фокус ввода
- •Общие свойства объектов
- •Модуль Math
- •Класс tLabel
- •Панели и их назначение
- •Обработка исключительных ситуаций
- •Класс tExeption
- •Создание нового класса исключения
- •Компоненты страницы Dialogs
- •Компоненты tOpenDilog, tSaveDialog
- •Графика в Делфи
- •Класс tCanvas
- •Метод класса tCanvas
- •Класс Tpen
- •Класс tFont
- •Класс tBrush
- •Класс tGraphics Tpicture
- •Класс TpaintBox
- •Класс tBitMap
- •Методы BitMap
- •Класс tImage
- •Подрограмма формирования преобразования строк.
- •Класс tForm
- •Печать из программы
- •Работа с файлами
- •Работа с файловой системой Windows.
Печать из программы
Мы имеет в делфи объект printer:класса Tprinter. Uses Printers; Объект принтер содержит свойство canvas. При отрисовке на нем произвольной информации она будет выводиться на экран и на принтер. Свойство канвас объекта принтер доступен только тогда. Когда принтер подготовлен физичски к печати. Для программной подготовки свойства канвас используются методы.
Procedure BeginDoc; …рисуем
Procedure EndDoc; 1й метод определяет начало печати и создает экземляр класса тканвас . 2й указывает на завершение печати, после него свойство канвас сново не доступно.
Пр. выведем строчку проверка принтера
…. printer.BeginDoc; printer.Canvas.OutText (50,50,’проверка принтера’); printer.EndDoc;
При выводе графических данных на печать следует учитывать, что разрешение экрана в пикселях и принтера в точках существенно различаются.
Было печать графики.
Печать текста.
Для вывода только текста используем другой подход. Есть процедура assingPrn она связывает файловую переменную типа текстфайл с принтером. Далее write или writeln выведут информацию на принтер.
Пр.
…. Button1Click…
Var MyFile:Texfile;
Begin assingPrn(MyFile); rewrite(MyFile); writeln(MyFile,’проверка’); System.CloseFile(MyFile); end;
Работа с файлами
{$I+Y} В случае невозможности открыть файл исключительная ситуация не возникает, а проверить результат можно, обратившись программно к стандартной функции IoResult она возвращает 0 если ошибок не было или не нулевой код ошибки.
Пр. If IoResult <>0 ten showmessage (‘Ошибка ввода’)
Поиск файлов. Процесс поиска файлов выполняется в делфи в 3 этапа
Находится первый файл удовлетворяющей заданной маске. Function FindFirst (параметры) (const Path:string; Attr:integer; var F:TSearchrec):integer;
Можно указать набор атрибутов учитываемое при отборе файлов. Эти атрибуты были указанны при описании FileGetAttr. Результат поиска в REC имеющий тип TSearchRec
Type TSearchRec=record time:integer; size:integer; (потому что в формете дос) Name:TFileName; FindHandle: THandle; end;
Function FindNext (var F:TsearchRec):integer на основании переменной F полученной по функции возвращает в переменной F имя следующего файла в каталоге. Переменная F должна предварительно инициализироваться обращением к функции FindFirst. При успешной поиске возвращает значение 0
FindClose (var F:TsearchRed); освобождает память, которая была выделена для процесса поиска.
Работа с файловой системой Windows.
API – функции доступны после установки модуля. При создании программ для виндовс нужны компоненты виндовс. Для работы с ними не нужно создавать специальные файловые переменные. Потому что в виндовс файл имеет уникальный цифровой индентификакор и называется handle.
Создание файла: 1) function FileCraate (const FileName:string):integer; ? или минус 1?.
2) Function FileOpen(const FileName:string; Mode:LongWord):integer; Mode => fmOpenread fmOpenwrite fmOpenReadWrite 3) Function Fileread(Handle:integer; var Buffer,count:integer):integer;
Filewrite(….) 4) procedure closeFile(Handle)