Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Отображение текста в надписях компонентов Label и Panel




Компоненты ввода и отображения текстовой информации

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

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

Таблица 1. Компоненты ввода и отображения текстовой информации

Пикто-грамма Компонент Страница палитры Описание
  Label (метка) Standard Отображение текста, который не изменяется пользователем. Можно изменить оформление текста: цвет метки и текста. Отображаемый текст можно получить(изменить) через свойство Caption.
  Panel (панель) Standard Компонент является контейнером для группирования элементов управления, но может использоваться и для отображения текста с возможностями объемного оформления. Основное свойство — Caption(как правило, оставляют пустым).
  Edit (окно редактирования) Standard Отображение, ввод и редактирование однострочных текстов. Имеется возможность оформления объемного бордюра. Содержимое (текст) можно получить(изменить) через свойство Text.
  MaskEdit (окно маскированного редактирования) Additional Используется для форматирования данных или для ввода символов в соответствии с шаблоном. Основные свойства — Text и EditText.
  Memo (многострочное окно редактирования) Standard Отображение, ввод и редактирование многострочных текстов. Имеется возможность оформления объемного бордюра. Строки текста доступны через свойство Lines.
  ListBox (окно списка) Standard Отображение стандартного окна списка Windows, позволяющего пользователю выбирать из него пункты. Элементы списка доступны через свойство Items.
  ComboBox (редактируемый список) Standard Объединяет функции ListBox и Edit. Пользователь может либо ввести текст, либо выбрать его из списка. Элементы списка доступны через свойство Items.
  StringGrid (таблица строк) Additional Отображение текстовой информации в таблице из строк и столбцов с возможностью перемещаться по строкам и столбцам и осуществлять выбор. Строки, записанные в ячейках таблицы можно получить через свойство Cells.

Отображение текста в надписях компонентов Label и Panel

Для отображения различных надписей на форме используются в основном компоненты Label и Panel.

Label — этометка, специально предназначенная для отображения текстов.

Panel – это панель, основное назначение которого компоновка компонентов в окне формы. Однако, панель можно использовать и для вывода текстов.

Примеры вывода текста в компонентах приведены на рис. 1-2.

Рис. 1 Примеры вывода текста в компоненте Label

Рис. 2 Примеры вывода текста в компоненте Panel

Тексты, отображаемые в перечисленных компонентах, определяются значением их свойства Caption. Его можно устанавливать в процессе проектирования или задавать и изменять программно во время выполнения приложения. Например:

Label1.Caption := 'Новый текст';

Если требуется отобразить числовую информацию, можно воспользоваться функциями FloatToStr и IntToStr, переводящими соответственно числа с плавающей запятой и целые в строку. Для формирования текста, состоящего из нескольких фрагментов, можно использовать операцию «+», которая для строк означает их склеивание (конкатенацию).

Например, если в программе имеется целочисленная переменная I, отображающая число сотрудников некоторой организации, то вывести в метку Label1 информацию об этом можно оператором:

Label1.Caption := 'Число сотрудников: '+IntToStr(I);

Свойство Color во всех компонентах определяет цвет фона, а подсвойство Color свойства Font (записывается Font.Color)- цвет шрифта. Например, в большинстве меток (кроме верхней) на рис. 1 задан цвет фона равным clWhite — белый. Если цвет специально не задавать, то цвет фона обычно сливается с цветом контейнера, содержащего метку, так что фон просто не заметен.

Для метки Label цвет и шрифт — единственно доступные элементы оформления надписи. Компонент Panel имеют свойства

BorderStyle, определяющее рамку текста — бордюр.

BevelInner, BevelOuter, BevelWidth, BorderWidth, которые предоставляют богатые возможности оформления надписи, как вы можете видеть на рис. 2.

Таким образом, с точки зрения оформления выводимого текста максимальные возможности дает Panel и минимальные — Label.

Размещение всех рассматриваемых компонентов на форме определяется, в частности, свойствами:

Тор - координата верхнего края (отступ в пикселях от верхней границы родительского компонента),

Left - координата левого края,

Height - высота,

Width - ширина.

Имеются также свойства, определяющие изменение размера компонента при изменении пользователем во время выполнения приложения размеров окна. Это общие свойства всех оконных компонентов:

Align - выравнивание компонента по всей верхней, левой, правой, нижней частям контейнера или по всей его клиентской области,

Anchors - привязка сторон компонента к сторонам контейнера,

Constraints - ограничения допустимых изменений размеров.

Учтите, что использование в свойстве Anchors одновременной привязки компонента к противоположным сторонам контейнера приведет к растягиванию или сжатию компонента при изменении пользователем размеров окна. При этом в метках в ряде случаев наблюдаются неприятности, связанные с перемещением надписей (если они, например, выровнены по центру). Чтобы избежать этих неприятностей, надо в обработку события формы OnResize вставить операторы, перерисовывающие компоненты методом Repaint, например:

Label1.Repaint;

Размер меток Label определяется также свойством AutoSize. Если это свойство установлено в true, то вертикальный и горизонтальный размеры компонента определяются размером надписи. Если же AutoSize= false, то выравнивание текста внутри компонента определяется свойством Alignment, которое позволяет выравнивать текст по левому краю, правому краю или центру клиентской области метки.

В панели Panel также имеется свойство AutoSize, но оно не относится к размерам надписи Caption. Однако, свойство выравнивания Alignment работает и для панели.

В метке Label имеется свойство Wordwrap — допустимость переноса слов длинной надписи, превышающей длину компонента, на новую строчку. Чтобы такой перенос мог осуществляться, надо установить свойство WordWrap= true, свойство AutoSize= false (чтобы размер компонента не определялся размером надписи) и сделать высоту компонента такой, чтобы в нем могло поместиться несколько строк (см. пример правой нижней метки на рис. 1. Если WordWrap=false, AutoSize=false, то длинный текст, не помещающийся в рамке метки, просто обрезается (см. пример левой нижней метки на рис. 1.

В панели размещение надписи в нескольких строках невозможно.

Для отображения текстовой информации с дополнительной возможностью прокрутки длинных текстов можно использовать также окна редактирования Edit и MaskEdit в режиме Readonly(не изменяемый).



Поделиться:

Дата добавления: 2015-09-14; просмотров: 169; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты