Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Класс TFont
С помощью этого класса задаются характеристики текста. Свойства:
Color: TColor; - задает цвет шрифта. По умолчанию clBlack;
Name: TFontName; - задает название шрифта (например ‘Arial’);
Size: Integer; - задает размер букв;
Style: TFontStyle; - задает стиль букв. Для задания стиля используются константы: [fsBold], [fsItalic] [fsUnderline], [fsStrikeOut];
Способы отображения графики Delphi предоставляет программисту 3 способа отображения графики: · использование заранее созданных графических изображений; · создание изображений с помощью графических компонентов; · создание изображений с помощью примитивов (линия, круг и т.д.) непосредственно во время работы программы.
В стандартную библиотеку визуальных компонент Delphi входит несколько объектов, с помощью которых можно придать своей программе совершенно оригинальный вид. Это - TImage (TDBImage), TShape, TBevel. Рассмотрим их.
Компонент TImage (отображение картинок)
Этот компонент служит для размещения на форме одного из трех поддерживаемых Delphi типов изображений: растровой картинки (расширение *.bmp), пиктограммы (*.ico) или метафайла (*.mtf). Любой из этих типов изображений содержится в центральном свойстве компонента - Picture. В свойстве Canvas содержится канва, с помощью которой при необходимости программа может отредактировать растровое изображение (но не пиктограмму или метафайл!). Рассмотрим как можно создать несложный просмотрщик изображений. 1. Поместите на форму панель TPanel, очистите ее свойство Caption и поместите значение alBottom в свойство Alignment. При этом панель займет нижнюю часть формы. 2. Разместите на панели кнопку TButton с надписью «Загрузить». 3. На любое свободное место формы (над панелью) поместите компонент TImage и установите в его свойство Align значение alClient. 4. На любое место (Timage, TPanel или даже TButton) поместите стандартный диалог TOpenPictureDialog (страница Dialogs палитры компонентов). С его помощью пользователь программы может разыскать нужный файл с изображением. Рассмотрим пример обработчика события OnClick для кнопки Button1:
procedure TForm1.Button1Click(Sender: TObject); begin if OpenPictureDialog1.Executethen begin Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); Image1.Stretch: = True; end; end;
Запустив программу на выполнение, нетрудно видеть, что при этом предоставляется полноценный диалог по загрузке рисунка. Заметим, что оператор Image1.Stretch: = True; масштабирует изображение так, чтобы оно занимало всю рабочую область компонента ТImage. Свойства компонента: Canvas - содержит канву для прорисовки изображения;
Center - у казывает, надо ли центрировать изображение в границах компонента. Игнорируется, если: AutoSize: = True; или Stretch: = True; и изображение не является пиктограммой (ICO);
Increment - разрешает/запрещает показ большого изображения по мере его загрузки; talDisplay –
Picture - ц ентральное свойство класса. Служит контейнером изображения TPicture;
Propertional: разрешает/запрещает пропорционально уменьшать высоту и ширину изображения, если оно не может целиком уместиться в рабочей зоне компонента;
Stretch - разрешает/запрещает изменять размер изображения так, чтобы оно целиком заполнило клиентскую область компонента;
Transparent - з апрещает/разрешает накладывать собственный фон изображения на фон компонента. С помощью методов класса Tpicture, к которому относится свойство Picture, программист может загрузить изображение из файла или буфера межпрограммного обмена Clipboard и сохранить его в файле или буфере. Для компонента определено событие OnProgress, с помощью обработчика которого программа может получить дополнительную информацию во время выполнения длительной по времени операции загрузки крупного изображения: Type TProgressStage = (psStarting, psRunning, psEnding); TProgressEvent = procedure (Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: String) of object; OnProgress: TProgressEvent;
Параметры имеют следующий смысл: Stage - содержит состояние процесса загрузки (psStarting - начало, psRunning - идет загрузка, psEnding - процесс завершен); PercentDone - приблизительно указывает процент выполненной работы; RedrawNow – используя этот параметр Windows сообщает, нужно ли сейчас выполнить прорисовку части изображения. Этот параметр имеет смысл, только если свойство IncrementalDisplay компонента содержит True; r - прямоугольник, нуждающийся в прорисовке; Msg - содержит одно или более слов, уточняющих состояние процесса. Компонент TImage позволяет поместить графическое изображение в любое место на форме. Этот объект очень прост в использовании - выберите его на странице Additional и поместите в нужное место формы. Собственно картинку можно загрузить во время дизайна в редакторе свойства Picture (Инспектор Объектов). Картинка должна храниться в файле в формате BMP (bitmap), WMF (Windows Meta File) или ICO (icon). (TDBImage отображает картинку, хранящуюся в таблице в поле типа BLOB. При этом доступен только формат BMP.) Как известно, форматов хранения изображений гораздо больше трех вышеназванных (например, наиболее известны PCX, GIF, TIFF, JPEG). Для включения в программу изображений в этих форматах нужно либо перевести их в формат BMP, либо найти библиотеки третьих фирм, в которых есть аналог TImage, “понимающий” данные форматы (есть как VBX объекты, так и “родные” объекты для Delphi). При проектировании следует помнить, что изображение, помещенное на форму во время дизайна, включается в файл.DPR и затем прикомпилируется к EXE-файлу. Поэтому такой EXE-файл может получиться достаточно большой. Как альтернативу можно рассмотреть загрузку картинки во время выполнения программы, для этого у свойства Picture (которое является объектом со своим набором свойств и методов) есть специальный метод LoadFromFile. Это делается, например, так:
if OpenPictureDialog1.Execute then Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
Важными являются свойства объекта Center и Stretch - оба имеют булевский тип. Если Center установлено в True, то центр изображения будет совмещаться с центром объекта TImage. Если Stretch установлено в True, то изображение будет сжиматься или растягиваться таким образом, чтобы заполнить весь объект TImage.
Обычно в обработчике события по сигналу psStarting создается индикатор процесса типа TProgressBar, по сигналам psRunning изменяется позиция индикатора, а в момент psEnding индикатор уничтожается. Следует учесть, что событие OnProgressBar создается только при загрузке некоторых типов изображений, например, подготовленных в формате JPEG (Joint Photographic Expert Group - объединенная группа фотографических экспертов).
|