Студопедия

КАТЕГОРИИ:

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

Основные свойства и методы простейших компонентов интерфейса




Компонент – это элемент пользовательского интерфейса, обеспечивающий взаимодействие пользователя с приложением. Стандартные компоненты Delphi объединены в библиотеку, которая называется VCL (Visual Component Library – библиотека визуальных компонентов).

Компоненты, которые программист может использовать в процессе разработки программы, находятся на вкладках палитры компонентов (Tool Palette). Часто используемые компоненты находятся на вкладках: Standard, Additional, System.

3.1 Метка (класс TLabel)

Метка представляет собой окно с текстом и может использоваться для расположения на форме некоторых надписей или подписей. Компонент расположен на вкладке Standard.

 Свойства:

Caption– заголовок – содержит выводимый в окне компонента текст.

Align– определяет способ выравнивания самого компонента:

alNone – как определено разработчиком;

alTop – занимает всю верхнюю часть окна, в котором размещается;

alBottom – занимает всю нижнюю часть окна, в котором размещается;

alLeft – занимает всю левую часть окна, в котором размещается;

alRight – занимает всю правую часть окна, в котором размещается.

Alignment– определяет способ выравнивания текста в окне компонента:

taCenter – по центру;

taLeftJustify – по левой границе;

taRightJustify – по правой границе.

Autosize– указывает, будет ли размер окна компонента определяться размером введенного текста с учетом шрифта (да, если true).

Font– определяет шрифт текста (выбирается в специальном окне).

Color– определяет цвета текста и фона в окне.

WordWrap– определяет, разбивать или нет текст на строки (да, если true, при этом значение свойства Autosize должно быть false).

Transparent – определяет, виден ли рисунок фона через окно (да, если true).

3.2 Строчный редактор (класс TEdit).

Компонент расположен на вкладке Standard  ипредставляет собой окно, обычно выделенное цветом, которое может использоваться, например, для ввода информации.

Свойства:

Text– строка, которая содержит введенную и отображаемую в окне компонента информацию. Доступ к информации в строке осуществляется как к полю записи, например:    Edit1.Text .

MaxLength– максимальная длина вводимой строки (если равна 0, то длина не ограничена).

ReadOnly– определяет возможность ввода информации в окно компонента (если true, то ввод невозможен).

PasswordChar– код символа, который заменяет вводимые символы, например, при вводе пароля (#0 – означает, что отображаются вводимые символы).

AutoSelect– определяет возможность выделения всего текста, отображенного в окне, при фокусировке на данном компоненте при вызове формы; может использоваться, например, если при вводе информации автоматически предлагается какой-либо вариант.

Visible позволяет скрыть компонент (false) или сделать его видимым (true).

Методы:

Clear– очистка поля Text.

GetTextLen– определить длину строки в поле Text.

GetTextBuf– поместить строку в буфер, изменив тип строки (из строки Паскаля сделать строку С).

SetTextBuf– поместить строку из буфера в Text, преобразовав строку из строки Си в строку Паскаля.

Например:

Procedure TForm1.Button1Click(Sender: TObject);

Var Buffer: PChar;     {тип – указатель на символ – строка Си}

  Size: Byte;

Begin Size := Edit1.GetTextLen;    {получить длину текста}

   Inc(Size);      {добавить 1 для размещения 0-символа}

   GetMem(Buffer, Size);   {запросить память под буфер}

   Edit1.GetTextBuf(Buffer,Size);{поместить текст в буфер}

   Edit2.Text:=StrPas(Buffer); {записать текст в Memo2}

   FreeMem(Buffer, Size);         {освободить память}

end;

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

Свойства:

SelText– содержит выделенный в окне компонента текст.

SelStart– содержит номер позиции первого выделенного символа.

SelLength– содержит длину выделенного фрагмента.

Методы:

SelectAll– выделить все.

ClearSelection– снять выделение.

CutToClipboard– вырезать выделенную информацию и поместить в буфер.

CopyToClipboard – копировать выделенную информацию и поместить в буфер.

PasteFromClipboard– вставить из буфера.

3.3 Текстовый редактор (класс TMemo)

Компонент расположен на вкладке Standard.Представляет собой многострочный текстовый редактор и используется обычно для ввода или отображения текстов.

 Свойства:

Text– содержит текст, как единое целое.

Lines– позволяет работать с отдельными строками текста (массив строк типа TStrings).

В данном случае применимы методы, работающие со строками: Add, Delete, Insert.

Например:

Memo1.Lines.Add('Another line is added');

а также методы : LoadFromFile и SaveToFile. Например:

procedure TForm1.Button1Click(Sender: TObject);

begin

Memo1.Lines.LoadFromFile('C:\AUTOEXEC.BAT');

Writeln('The 6th line of AUTOEXEC.BAT is: ', Memo1.Lines[5]);

end;

ReadOnly–определяет возможность ввода информации в окно компонента (если true, то ввод невозможен).

MaxLength– определяет максимальную длину текста (если 0, то длина не ограничена).

ScrollBars – определяет наличие или отсутствие полос прокрутки:

      ssNone – полосы прокрутки отсутствуют;

ssBoth – обе полосы (горизонтальная и вертикальная);

ssHorizontal – горизонтальная полоса;

ssVertical – вертикальная полоса.

AutoSize– определяет, зависит ли размер окна компонента от параметров текста ( да, если true).

WordWrap– определяет, выполняется ли автоматическое разбиение строк при выводе в окне компонента (да, если true).

WordTabs– определяет, будут ли учитываться символы табуляции при отображении текста (да, если true).

Этот компонент наследует все методы, а также свойства и методы, работающие с выделением, описанные для класса TEdit.

3.4 Кнопка (класс TButton)

Компонент расположен на вкладке Standard.  Представляет собой прямоугольник, на котором размещается название кнопки. Используется для инициирования каких-либо действий.

Свойства:

Caption– название кнопки.

Default– определяет, генерируется ли событие OnClick для данной кнопки при нажатии клавиши Enter, т. е. можно ли пользоваться для «нажатия» кнопки клавиатурой (да, если true). Используется для указания действий, осуществляемых при нажатии клавиши Enter.

Cancel – аналогично, но для клавиши Esc.

ModalResult– в процессе выполнения в это поле можно занести код возврата, который затем можно проанализировать для определения дальнейших действий.

Visible–позволяет скрыть компонент (false) или сделать его видимым (true)

Enabled–признак доступности кнопки. Если значение свойства равно true, то кнопка доступна, если  false – то недоступна (в результате щелчка по кнопке, событие OnClick не возникает).

Hint–текст подсказки, который появляется рядом с указателем мыши при позиционировании указателя на кнопке; значение свойства ShowHint должно быть true.

ShowHint–свойство разрешает (true) или запрещает (false) отображение подсказки при позиционировании указателя на кнопке.

          Основные методы:

OnClick–при обычном нажатии клавиш мыши.

3.5 Кнопка с графикой (TBitBtn)

Компонент расположен на вкладке Standard. Представляет собой прямоугольник, на котором размещается битовая графика (например, кнопка OK с галочкой). Используется для инициирования каких-либо действий. Кнопка имеет свойства и события, аналогичные кнопке Button. Однако есть свойства, отражающие особенности кнопки BitBtn.

Свойства:

Glypht –задает изображение на кнопке  BitBtn. Чтобы задать битовый образ, надо в окне Object Inspector выбрать свойство Glypht, сделать щелчок на кнопке с тремя точками. В появившемся окне Picture Editor щелкнуть на кнопке Load и в окне Load Pictureвыбрать BMP – файл, в котором находится битовый образ. После нажатия кнопки OK, выбранное изображение появится на кнопке левее надписи. Файл изображения для кнопки может содержать до четырех пиктограмм размера 16*16. Самое левое соответствует отжатой кнопке, второе слева – недоступной кнопке, когда ее свойство Enabled равно false, третье слева изображение используется при нажатии пользователем на кнопку при ее включении. Четвертое слово используется для кнопки с фиксацией (SpeedButton). Большинство изображений для кнопок используют две пиктограммы.

NumGlyphs –определяетколичество картинок в битовом образе Glypht.

Margin –определяет расположение изображения и надписи на кнопке. Если свойство равно 1 (принимается по умолчанию), то изображение и надпись размещаются в центре кнопки. Если свойство больше 0, то в зависимости от значения свойства Layout, изображение и надпись смещаются к той или иной кромке кнопки, отступая от нее на число пикселей, указанных в свойстве Margin

Layout –определяет положение изображения по отношению к надписи. Может принимать значения:   blGlypLeft – слева, blGlypRight – справа,                   blGlypTop – сверху, blGlypButton – снизу.

Spacing– задает число пикселей, разделяющих изображение и надпись на поверхности кнопки. По умолчанию значение свойства равно 4. Если значение равно 1, то изображение и надпись размещены вплотную друг к другу. Если значение свойства равно 1, то текст появится посередине между изображением и краем кнопки.

Kind–определяет вид кнопки. По умолчанию значение этого свойства равно bkCustom – заказная. Но можно установить и множество других предопределенных типов: bkOK, bkCancel, bkHelp, bkYes,bkNo, bkClose,bkAll и др. В этих типах уже сделаны соответствующие надписи, пиктограммы и еще некоторые свойства. Обычно все-таки ими лучше не пользоваться. Лучше использовать заказные кнопки и самим задавать в них все необходимые свойства.

3.6 Кнопка выбора опции (класс TCheckBox)

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

Свойства:

Caption– название кнопки (заголовок располагается правее кнопки).

Checked – определяет включенное (true) и выключенное (false) состояние кнопки.

Alignment– определяет выравнивание заголовка:

taLegtJustify – выравнивание по левой границе окна компонента;

taRightJustify – выравнивание по правой границе.

AllowGrayed– определяет количество состояний кнопки (true – 3 состояния, включая неопределенное – серая галочка, а false – 2 состояния).

State– определяет состояния кнопки (флажка):

cbGrayed – неопределенное состояние (серая галочка);

cbChecked – включено (флажок установлен);

cbUnchecked – выключено (флажок сброшен).

3.7 Радиокнопка (класс TRadioBotton)

Компонент расположен на вкладке Standard и является зависимой кнопкой, состояние которой определяется состоянием других кнопок. Представляет собой кружок, внутри которого стоит или не стоит точка. Используется также как и CheckBox для обозначения выбора или отмены опций, но принято использовать эти кнопки, для взаимоисключающих вариантов.

Все свойства аналогичны кнопке выбора опции CheckBox.

3.8 Кнопка с фиксацией (класс TSpeedButton)

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

Свойства:

Name–имя компонента в описании класса формы.

Glypht–битовый образ, в котором находятся картинки для каждого из возможных состояний кнопки (доступна, недоступна, нажата, зафиксирована)

NumGlyphs–количество картинок в битовом образе Glypht.

Чтобы задать битовый образ, надо в окне Object Inspector выбрать свойство Glypht, сделать щелчок на кнопке с тремя точками. В появившемся окне Picture Editor щелкнуть на кнопке Load  и в окне Load Pictureвыбрать BMP – файл, в котором находится битовый образ.

Flat–определяет вид кнопки (наличие границ). Если значение свойства равно true, то граница кнопки появляется только при позиционировании указателя мыши на кнопке.

GroupIndex– идентификатор группы кнопок. Кнопки, имеющие одинаковый идентификатор группы, работают подобно переключателям (RadioButton): нажатие одной из кнопок группы вызывает срабатывание других кнопок этой группы. Чтобы кнопку можно было зафиксировать, значение свойства не должно быть равно нулю GroupIndex.

Down– идентификатор состояния кнопки. Изменить значение свойства можно, если значение свойства GroupIndex не равно нулю.

AllowAllUp– свойство определяет возможность отжать кнопку. Если кнопка нажата и значение свойства равно true, то кнопку можно отжать

Left– расстояние от левой границы кнопки до левой границы формы.

Top–расстояние от верхней границы кнопки до верхней границы формы.

Height– высота кнопки.

Width– ширина кнопки.

Enabled– признак доступности кнопки. Если значение свойства равно true, то кнопка доступна, если  false – то недоступна (в результате щелчка по кнопке, событие click не возникает).

Visible– позволяет скрыть компонент (false) или сделать его видимым (true).

Hint– текст подсказки, который появляется рядом с указателем мыши при позиционировании указателя на кнопке (значение свойства ShowHint должно быть true).

ShowHint– свойство разрешает (true) или запрещает (false) отображение подсказки при позиционировании указателя на кнопке.

          Основные методы:

OnClick–при обычном нажатии клавиш мыши. Состояние, которое примет кнопка в результате щелчка на ней, зависит от значения свойства Down. Если значение равно true, то кнопка нажата.

3.9 Список (класс TListBox)

Компонент расположен на вкладке Standard и является списком, в котором можно выбрать нужный элемент. Используется для отображения вариантов. Представляет собой окно, содержащие отображение некоторых элементов, среди которых можно выбирать.

Свойства:

Items– элементы списка. Представляют собой массив строк типа TStrings, выводимых в окно. Для работы с объектами TStringsиспользуются методы:

Add – добавить строку к массиву:  

                  ListBox1.Items.Add(’Новая строка’);

Delete– удалить строку из массива;

Insert – вставить строку в массив.

Items.count– количество элементов списка.

Sorted– признак автоматической сортировки. Если указано true, то строки в окне сортируются.

ItemIndex– номер выбранной строки (строка выделяется). Элементы нумеруются с нуля. Если ни один из элементов не выбран, то значение свойства равно -1.

MultSelect – если указано true, то можно выбирать больше, чем одну строку.

ExtendSelect– если указано true, то нужно использовать для выбора нескольких строк клавиши Shift или Ctrl.

SelCount – количество выбранных строк.

Selected– позволяет определить, выбрана ли конкретная строка. 

Пример:

Procedure TForm1.FormCreate(Sender: TObject);

Var

I: Integer;

Begin

        ListBox1.Items.Add('Blue');

        ListBox1.Items.Add('Yellow');

        ListBox1.Items.Add('Red');

end;

Procedure TForm1.ListBox1Click(Sender: TObject);

Begin

if ListBox1.Selected[0] then ListBox1.Color:= clBlue;

   if ListBox1.Selected[1] then ListBox1.Color:=clYellow;

if ListBox1.Selected[2] then ListBox1.Color := clRed;

end;

3.10 Раскрывающийся список (класс TComboBox)

Компонент расположен на вкладке Standard. Является комбинацией поля редактирования и списка, что дает возможность ввести данные путем набора на клавиатуре или выбором из списка. Представляет собой строку, справа от которой находится кнопка со стрелкой вниз – «выпадающий» список.

Свойства:

Items, ItemIndex, Sorted–аналогичны ListBox.

Text– содержит выбранную строку и высвечивается в исходном виде.

3.11 Панель кнопок выбора (класс TGroupBox)

Компонент расположен на вкладке Standard.Является контейнером, объединяющим группу связанных органов управления (таких, как RadioBotton, CheckBox и т.д.), и представляет собой панель для размещения кнопок.

Свойства:

Caption– заголовок панели.

3.12 Группа радиокнопок (класс TRadioGroup)

Компонент расположен на вкладке Standard. Является комбинацией группового окна GroupBox с набором радиокнопок RadioBotton. Служит специально для создания групп радиокнопок. В компоненте можно размещать несколько радиокнопок.

Свойства:

Items –названия кнопок.

ItemIndex– номер выбранной кнопки.

Columns –определяет размещение кнопок в один или два столбца.

3.13 Панель (класс TPanel)

Компонент расположен на вкладке Standard.Является контейнером для группирования органов управления и меньших контейнеров и представляет собой панель для размещения других компонентов. Обычно панель используют для привязки компонентов к границе окна. Также панель можно использовать для построения полос состояния, инструментальных панелей, палитр инструментов.

Свойства:

Align – определяет границу формы, к которой привязана панель и может принимать значения:

alLeft – панель прикреплена к левой границе формы,

alRight – панель прикреплена к правой границе формы,

alTop – панель прикреплена к левой верхней границе,

alBottom – панель прикреплена к нижней границе формы.

BevelOuter –внешняя «фаска» панели:

bvNone – фаска не отображается и поверхность панели находится на одном уровне с поверхностью формы,

bvLowered – поверхность панели притоплена,

bvRaised – поверхность панели выступает над поверхностью формы.

Enabled –свойство позволяет сделать недоступными все компоненты, которые расположены на панели.

3.14 Кнопка-счетчик (класс TUpDown)

Компонент расположен на вкладке Win32 и представляет собой две соединенные кнопки, используя которые можно уменьшить или увеличить значение внутренней переменной-счетчика. Обычно используется в паре с компонентом Edit, что дает возможность пользователю менять содержимое этого поля.

Свойства:

Position –счетчик. Значение меняется в результате щелчка на кнопке Up (увеличение) или Down (уменьшение).

Min –нижняя граница диапазона изменения счетчика.

Max –верхняя граница диапазона изменения счетчика.

Wrap –определяет поведение компонента при достижении предельных значений (Min, Max). Если свойство равно True, то попытка превысить максимальное или уменьшить минимальное числа приведет к сбросу счетчика соответственно в минимальное или максимальное значение.

Increment –величина, на которую меняется значение счетчика в результате щелчка на одной из кнопок.

Associate –определяет компонент, используемый в качестве индикатора счетчика. Если используется компонент Edit, то при изменении содержимого поля редактирования, автоматически меняется значение счетчика

AlignButton – определяет, слева или справа от окна будут располагаться кнопки:

          udLeft – кнопки расположены слева,

      udRight –кнопки расположены справа.    

Orientation – задает ориентацию кнопок, может принимать значение:

      udHorizontal – кнопки расположены по горизонтали (одна рядом с другой),

      udVertical – кнопки расположены по вертикали (одна под другой).

3.15 Окно редактирования со счетчиком (класс TSpinEdit)

Компонент используется для создания окна редактирования в комбинации с кнопкой счетчиком. Свойства компонента похожи на свойства компонента UpDown, только имеют другие имена: свойства Min, Max, Positionназываются соответственно MinValue, MaxValue, Value.В целом компонент во многих отношениях удобнее простого сочетания UpDown и Edit. Поэтому, если не нужны дополнительные возможности UpDown, то рекомендуется использовать компонент SpinEdit.

3.16 Изображение (Класс TImage)

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

Свойства:

Picture–определяет иллюстрацию, которая отображается в поле компонента. Для выбора изображения необходимо нажать на кнопку с многоточием около свойства Picture в окне Object Inspector. В появившемся окне Picture Editor щелкнуть на кнопке Load и в окне Load Pictureвыбрать файл, в котором находится изображение. После нажатия кнопки OK, выбранное изображение появится в компоненте. При этом, компонент не только отображает картинку но и сохраняет в приложении, что позволяет поставлять приложение без отдельного графического файла. Однако в компонент Image можно загружать внешние файлы и в процессе выполнения приложения.

Width, Height–размеры компонента. Если размер компонента меньше размера рисунка и значение свойств Autosize, Strech, Proportional равно false, то отображается лишь часть рисунка.

Autosize–определяет возможность автоматического изменения размера компонента в соответствии с реальным размером иллюстрации. 

Strech– признак автоматического масштабирования (сжатия или растяжения) иллюстрации в соответствии с реальным размером компонента. Если размер компонента не пропорционален размеру иллюстрации, то иллюстрация будет искажена.

Proportional–признак автоматического масштабирования изображения без искажения. Для выполнения масштабирования значение данного свойства должно быть true, а свойство Autosize –false.

Center–определяет расположение картинки в поле компонента по горизонтали, если ширина картинки меньше ширины поля компонента. Если значение свойства равно True, то картинка располагается в центре поля компонента/

Align– определяет границу формы, к которой «привязан» компонент. Если значение свойства равно alClient, то размер компонента устанавливается равным размеру «клиентской» (внутренней) области формы, причем, если во время работы программы будет изменен размер формы, автоматически изменен и размер компонента/

Transparent – позволяет сделать изображение прозрачным, если значение данного свойства равно True. Используется для наложения изображений. Свойство действует только на битовые матрицы/

Canvas – определяет поверхность компонента.










Последнее изменение этой страницы: 2018-04-12; просмотров: 236.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...