Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Характеристика компонентов




Компоненты (объекты, как это принято в самом Delphi и в языках Visual Basic, Visual C++) являются структурными единицами и из них строится приложение. Они делятся на визуальные (видимые, управ­ляющие или элементы управления) и невизуальные (системные).

Все базовые компоненты (базовые объекты, классы) находятся в библиотеке визуальных компонентов VCL (Visual Component Library). Все элементы этой библиотеки являются классами, но не все элементы являются компонентами. Все элементы разработаны на Delphi, поэтому они связаны со средой Delphi и представляют собой дерево (иерархию) классов с корневым узлом TObject. Имя любого класса начинается с буквы «T» (тип объекта). Потомок класса наследует все свойства и методы своего родителя. Класс TControl является базовым для всех визуальных компонентов. Исходные тексты элементов находятся в каталоге Source корневого каталога Delphi.

Все визуальные компоненты можно разбить на две группы: оконные (кнопки Button, поля редактирования Edit) и неоконные элементы управления (кнопки быстрого доступа SpeedButton).

Оконные элементы могут получать фокус ввода (активизироваться), что визуально определяется курсором редактирования или черным прямоугольником, имеют дескриптор окна, используемый Windows для его идентификации и возможности обращения к нему.

Неоконные элементы не могут получать фокус и быть родителями, нет дескриптора окна, и они используют меньше ресурсов.

Визуальные компоненты имеют много общих свойств, методов и событий, которые рассматриваются далее в этом разделе, и описание их обычно не будет приводиться в последующих разделах при описании компонентов, в которых они используются, а будут приводиться только специфичные свойства, методы и события для отдельных компонентов.

Размещение и настройка компонентов на форме

Для каждого компонента интерфейса приложения выполняются опе­ра­ции выбора нужного компонента из палитры компонентов (щелчок мыш­ки по кнопке с изображением нужного компонента) и размещения выб­ранного компонента на форме (перемещение по диагонали пря­моуголь­ни­ка, нужного размера и на требуемом месте формы, указателя мыши при на­жатой левой клавише мышки) и изменения его свойств через окно Инс­пек­тора объектов (п. 2.1.1).

Если нужно разместить несколько одинаковых компонентов, то при первом выборе с нажатой клавишей Shift компонент будет закреплен и не нужно повторно выбирать этот компонент перед размещением его на фор­ме. Для отмены закрепления выберите другой компонент или щелкни­те на первой кнопке со стрелкой в палитре компонентов.

Щелчок по компоненту выделяет его. Для выделения группы объектов нужно дополнительно нажать клавишу Shift или обвести мыш­кой эти компоненты прямоугольником.

После размещения компонента мышкой можно изменить его разме­ры и местоположение.

После размещения компонента в файл модуля формы добавляется строка: <название компонента (свойство Name)>:<тип компонента>, а в файл описания компонента добавятся строки с его свойствами.

Пример при размещении кнопки (Button) под именем Button1:

Button1:TButton //описание объекта типа TButton в модуле формы

На странице Preferenses (предпочтения) окна Environment Options, вызываемого командой Tools/Environment Options, имеются поля: Grid (флаг выравнивания компонента по узлам сетки), Display grid (вывод сетки на форме), Grid size X, Grid size Y (размеры шага сетки по горизонтали и вертикали в пикселях).

Каждый компонент имеет набор свойств, которые отображаются в окне Инспектора объектов (п.2.1.1). Свойства предназначены для задания внешнего вида и поведения компонентов. Большинство свойств имеют значения по умолчанию. Пользователь настраивает компонент путем изменения значений нужных свойств в окне Инспектора. Для утверждения нового значения нажимается клавиша Enter или делается переход к следующему свойству или компоненту, а для отмены введенного значения нажимается клавиша Esc сразу после ввода.

Cуществуют следующие редакторы для ввода значений свойств.

Текстовый ‑ ввод строки символов или числа (например, Caption).

Перечисляемый ‑ значение вводится непосредственно или выбирает­ся из раскрывающегося списка. Если в списке всего два значения, то новое значение можно получить двойным щелчком (например,Visible).

Составной ‑ свойство (составное свойство) содержит список под­свой­ств, каждое из которых можно редактировать. Перед именем такого сос­тавного свойства указан знак «+». Двойной щелчок раскрывает этот список и знак «+» заменяется на «‑«(например, +Font).

Кнопка с троеточием служит для вызова специального редактора установки значения (например, Font).

Значения свойств можно изменять и в программе в виде:

<имя объекта (значение свойства Name)>. <имя свойства> := <выражение>

Пример: Label1.Caption:=’Фамилия сотрудника?’;

Если свойство составное, то подсвойство уточняется слева свойством и т.д.

Пример: Label1.Font.Color:=clRed;//Color подсвойство свойства Font.

Компонент может быть размещен внутри другого компонента, называемого контейнером (например, кнопки в контейнере ‑ панели).

Существуют свойства, недоступные через инспектор объектов (на­при­мер, RecordCount) и есть свойства, которые нельзя изменять при выпол­нении программы.

Свойства

2.1.7.1. Имя объекта

Name - имя объекта (компонента, элемента) для ссылки на объект в прог­рамме. Каждый объект имеет имя. Имя содержит латинские буквы, цифры и знаки подчеркивания и не может начинаться с цифры. Имя формируется автоматически при создании объекта (имя класса без первой буквы «T» и порядковый номер экземпляра объекта данного класса), но для нагляд­ности рекомендуется изменять имя, давая ему смысловое обозначение.

2.1.7.2. Внешний вид объекта

Caption ‑ содержит текст, который будет отображаться вместе с объектом, например, на командной кнопке или в заголовке формы. Если нужно подчеркнуть определенный символ, то перед ним указывается символ «&». Такой символ (акселератор) выполняет роль клавиши быстрого доступа для командной кнопки и, нажав ее одновременно с клавишей Alt, имитируется нажатие самой кнопки.

Пример: Button1.caption:=’&Выход’//клавиша быстрого доступа B

BorderStyle ‑ определяет рамку из одиночной линии вокруг объекта (sbs­Single) или ее отсутствие (sbsNone), «вдавленность» текста (sbsSunken).

Color‑ цвет фона объекта, например, формы или кнопки. Цвет задается в виде четырехбайтного шестнадцатеричного числа от 0 до 2FFFFFF: пер­вый байт содержит номер палитры, обычно $00 (системный цвет), следующие три байта содержат числа от 0 (выключен) до FF (максималь­ная интенсивность), выражающие RGB‑интенсивность смешиваемых цве­тов красного, зеленого и синего. Для удобства цвета можно задавать именованными константами: clAgua (ярко‑голубой), clBlack (черный), clBlue (голубой), clGray (серый), clGreen (зеленый), clLime (ярко‑зеленый), clMaroon (темно‑красный), clNavy (темно‑синий), clOlive (оливковый), clPurple (фиолетовый), clRed (красный), clSilver (серебряный), clTeal (бирюзовый), clWhite (белый), clYellow (желтый).

Следующие константы задают системные цвета Windows: clBack­Gro­und (фон окна), clActiveCaption (заголовок активного окна), clInactive­Caption (заголовок неактивного окна), clMenu (фон меню), clWindow (фон ок­на), clWindowFrame (рамка окна), clMenuText (пункт ме­ню), clWin­dows­Text (текст внутри окна), clCaptionText (текст заголовка ак­тив­но­го окна), clInactiveCaptionText (текст заголовка неактивного окна), clActive­Border (рамка активного окна), clInActiveBorder (рамка неактив­но­го окна), clAppWorkSpace (рабочая область приложения), clHighlight (фон вы­деленного текста), clHighlightText (выделенный текст), clBtnFace (кноп­ка), clBtnShadow (тень кнопки), clGrayText (неактивный интерфейс эле­мен­та), clBtnText (текст кнопки), clBtnHighlight (подсвеченная кнопка), cl­Scroll­Bar (полоса прокрутки), cl3DdkShadow (теневая сторона объемных эле­­ментов), cl3DLight (яркая сторона объемных элементов), clInfoText (тек­ст инструментальных средств), clInfoBk (фон инструментальных средств). Пример: Edit1.Color:=clRed; //красный фон поля.

Ctl3D ‑ задает вид визуального компонента: объемный (True).

Font ‑ определяет шрифт, применяемый при отображении текста. Для уста­новки атрибутов шрифта в программе используются подсвойства: Name (имя шрифта), Size (размер шрифта в пунктах; один пункт равен 1/72 дюйма), Height (размер шрифта в пикселях; если размер положителен, то он содержит и межстрочный интервал), Style (стиль шрифта ‑ комбинация следующих констант (подсвойств): fsBold (полужирный), fsItalic (курсив), fsStrikeOut (зачеркивание), fsUnderLine (подчеркивание)), Color (цвет текста). Свойства Size и Height зависят друг от друга.

Пример установки синего цвета текста и зеленого цвета фона метки:

Lab1.Font.Color:=clBlue;{синий текст} Lab1.Color:=clGreen;{зеленый фон}

Transparent ‑ прозрачный объект (True) или нет (False).

Visible‑ определяет, является ли объект видимым (True) или невидимым.

Images ‑ список картин, используемых в дочерних объектах (п.2.3.7.2).

WordWrap ‑ перенос слов при переполнении длины на другую строку.

2.1.7.3. Размеры объекта

AutoSize ‑ размер объекта определяется его надписью или изображением на его поверхности (True).

Height, Width ‑ высота и ширина объекта в пикселях.

2.1.7.4. Местоположение объекта

Align - выравнивание объекта относительно контейнера в котором нахо­дит­ся объект (форма или панель): alNone (без выравнивания), alTop (по верхней стороне), alBottom (по нижней стороне), alLeft (по левой стороне), alRight (по правой стороне), alClient (занимает весь контейнер).

Пример: Panel1.Align:=altop;//выравнивание по верхней стороне.

Top, Left‑ адрес левого верхнего угла объекта относительно контейнера (например, экрана, формы или панели), содержащего этот объект. Размеры и местоположение объекта можно изменять мышкой, перетаскивая ее за края рамки выделенного объекта.

2.1.7.5. Перемещение объекта

DragCursor ‑ определяет вид указателя мышки при перемещении объекта. Значения аналогичны значениям свойства Cursor (п. 2.1.7.9).

DragMode ‑ разрешается (dmAutomatic) или запрещается (dmManual) перенос объекта мышкой при выполнении приложения.

2.1.7.6. Доступ к объекту

Enabled ‑ разрешает (True) или блокирует (False) работу с объектом. Ви­зуаль­но заблокированный объект выглядит затененным, тусклым.

Пример: Button1.Enabled:=False; //блокировка кнопки Button1.

Handle ‑ идентификатор (дескриптор) окна объекта в системе Windows. Используется в функциях Windows для доступа к окнам объектов, например, для посылки сообщений окну (п. 1.7.10; 2.3.3.1).

ReadOnly ‑ только чтение/редактирование значения объекта (True/ False). Программным способом можно изменять значение объекта независимо от значения ReadOnly.

ShowAccelChar ‑ символ «&» указывает на клавишу ‑ акселератор (True).

TabStop ‑ возможность получения фокуса (True).

TabOrder‑ номер (отсчет с нуля) в последовательности обхода клавишей Tab объектов в контейнере. По умолчанию последовательность опре­де­ляет­ся порядком размещения объекта в контейнере. Порядок можно задать и командой Edit/Tab Order.

2.1.7.7. Значение объекта

Tag - содержит любое целое числовое значение, которое помещается для временного хранения, например для передачи информации между фор­ма­ми: Form2.Tag=2.

Text ‑ определяет текущее значение объекта.

Пример. Edit1.Text:=’Иванов’;...Fam:=Edit1.Text; //поле ввода

2.1.7.8. Меню

AutoPopup‑ вывод контекстного меню (True) (п.2.3.8.2).

PopupMenu ‑ выводимое контекстное меню при AutoPopup=True (п.2.3.8.2).

2.1.7.9. Вид указателя мыши

Cursor ‑ определяет вид указателя мышки: crDefault (умалчиваемый вид, обычно стрелка), crNone (отсутствует), crArrow (стрелка), crCross (крест), crHourGlass (песочные часы), crAppStart (песочные часы со стрелкой), crNo (знак запрета), crHandPoint (поднятый вверх указательный палец), crBeam (вертикальная линия с горизонтальными линиями на концах ‑ курсор редактирования), crSize (крестообразные стрелки), crHelp (стрелка с вопросом) и другие. В качестве указателя можно использовать рисунок в файле ресурсов формата Cur или Res, указав номер этого рисунка.

2.1.7.10. Справочная система

HelpContext ‑ указывает номер раздела справочной системы, который выводится при нажатии клавиши F1, когда объект в фокусе (п. 5.1).

ShowHint ‑ вывод подсказки (True).

Hint ‑ устанавливает текст всплывающей подсказки, которая появляется при помещении курсора мыши на поверхности объекта, если ShowHint=True. В строке подсказки, после символа «|», может следовать более развернутая длинная подсказка, которая обычно выводится в строку статуса. Для этого нужно сделать следующее. Разместить простую строку статуса StatusBar1 (п.2.3.1.3), компонент ApplicationEvents (п.2.3.8.6) и для его события OnHint написать обработчик:

Procedure TForm1.ApplicationEvents1Hint(Sender: TObject);

Вegin Form1.Statusbar1.SimpleText:=Application.Hint;{(п.2.2.2.2)} End;

Программным способом можно создать многострочную подсказку, включив символ Enter с кодом 13:

Пример: Button1.Hint:=’Удалить файлы’#13+NameFiles.

2.1.7.11. Наследование родительских свойств

ParentXXX (например, ParentColor, ParentCtl3D, ParentFont или ParentShowHint) ‑ указывает (True), что значение свойства XXX приравни­вает­ся значению одноименного свойства из родительского компонента. Это позволяет наследовать значения свойств своих родителей.

События

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...