Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовик ПиОА / СправПосЛР89.doc
Скачиваний:
33
Добавлен:
22.03.2015
Размер:
524.8 Кб
Скачать

9.2 Автоматический компонент tForm (форма)

Активизируется автоматически перед созданием приложения. Является основой для создания окна приложения(приложение может иметь несколько окон). Соответствующий объект FormXявляется контейнером для всех объектов интерфейса программы.

Свойства:

Caption– текст заголовка окна.

Icon– значок в заголовке окна.

Canvas– поверхность, на которую можно вывести графический объект.

    1. Компонент TEdit

Предназначен для ввода и редактирования строки символов.

Свойства:

Text= текст, находящийся в поле ввода и редактирования.

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

float y=StrToFloat(Edit1->Text); // например, введено число: -4,25

Если вводится целое число, то аналогичная строка будет иметь вид:

int y = StrToInt(Edit1->Text);

Если в программе необходимо вывести в поле объекта строку, то:

Edit1->Text = “Иванов”;

9.4 Компонент tLabel

Предназначен для вывода текста на поверхность формы. Сам объект не отображается на форме (виден только текст). Используется обычно для именования других объектов, например, объекта типа Edit1. Может использоваться для вывода результатов программы или каких либо сообщений. Свойства компонента определяют вид и расположение текста.

Свойства:

Captionсодержит отображаемый текст.

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

WordWrap– признак того, что слова, которые не помещаются в текущей строке, автоматически переносятся на следующую строку (значение свойстваAutoSizeдолжно бытьfalse).

Aligment - задает способ выравнивания теста внутри поля. Текст может быть выровнен по левому краю (taLeftJastify), по центру (taCenter) или по правому краю (taRightJastify).

    1. Компонент TButton

Представляет собой программную кнопку, с помощью которой инициируется выполнение некоторой функциональной задачи, программный код которой выполнен в виде функции-обработчика события. В качестве события может выступать, например, щелчок левой кнопкой мыши на объектеButton1.

Свойства:

Caption - содержит текст, отображаемый на кнопке (обычно назначение запускаемой программы).

Enabled- признак доступности кнопки. Если значение свойства равноtrue, то кнопка доступна, в противном случае (false) – не доступна.

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

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

    1. Компонент TImage

Предназначен для отображения рисунков в формате BMP. Для отображения рисунков в форматеJPGнеобходимо подключить модульJPEGс помощью директивы препроцессора #include<jpeg.hpp>.

Свойства:

Pictureобеспечивает поиск и отображение рисунка.

Propotional - признак автоматического масштабирования рисунка без искажения. Чтобы масштабирование было выполнено, значение свойстваAutoSizeдолжно бытьfalse.

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

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

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

Canvas– поверхность на которую можно программно вывести графические объекты.

    1. Компонент TStringGrid

Назначение. Отображение таблицы (двумерный массив строк). Каждый элемент имеет типAnsiString.

Свойства:

Row, Col– свойства, которые хранят номер строки и столбца текущей (выделенной) ячейки.

Cells[x][y]– адрес ячейки (x– номер столбца,y– номер строки) двумерного массива, соответствующего визуальной таблице.

RowCount– число строк.

ColCount – число столбцов.

FixedRows (FixedCols)– определяет число фиксированных строк (колонок) таблицы, используемых Запрещает прокрутку фиксированного числа строк (столбцов), обычно используемых в качестве табличных подзаголовков.

FixedColor – цвет фиксированных строк и столбцов.

DefaultColWidthsширина всех столбцов, выбираемых по умолчанию.

DefaultRowCount- ширина всех строк, выбираемых по умолчанию.

ColWidth– ширина конкретного столбца.

RowHeight- ширина конкретной строки.

VisibleColCount– Общее число видимых столбцов сетки.

VisibleRowCount- Общее число видимых строк сетки.

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

GridLineWidth– ширина разделительной линии сетки.

ScrollBars– добавление полос прокрутки.

DefaultDrawing– автоматическая прорисовка содержимого ячеек сетки (true).

LeftCol – устанавливает, какой столбец будет первым видимым столбцом сетки.

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

goEditing– признак допустимости редактирования содержимого ячеек таблицы:true– редактирование разрешено,false– запрещено.

    1. Компонент TComboBox

Предназначен для ввода данных в поле редактирования путем набора на клавиатуре или выбором из списка.

Свойства:

Text - содержит текст, находящийся в поле ввода/редактирования.

Items->Stringsэлементы списка – массив строк (нумеруются с нуля).

Countколичество элементов в списке.

Пример. ComboBox1->Items->Strings[0]=”первая строка”;

    1. КомпонентTListBox

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

Свойства:

Items->Strings– массив строк (нумеруются с нуля).

Count- количество элементов списка.

Sorted– признак необходимости автоматической сортировки (true) списка после добавления очередного элемента.

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

    1. Компонент TMemo

Предназначен для редактирования текста, который может состоять из нескольких строк.

Свойства:

Text- текст, находящийся в полеMemo. Рассматривается как единое целое.

Lines– массив строк, соответствующий содержимому поля доступ к строке осуществляется по номеру. Строки нумеруются с нуля.

Доступ к строке: Memo1->Lines->Strings[i];

Добавить строку в конец списка: AnsiString st=” “; Memo1->Lines->Append(st);

Добавить строку в конец списка и вернуть номер добавленной строки:

int k = Memo1->Lines->Add(st);

    1. Компонент TCanvas

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

Методы:

TextOut(x,y,s) – выводит строкуsот точки с координатами (x,y). Шрифт определяет свойствоFontповерхности, на которую выводится текст, цвет закраски области вывода текста – свойствоBrushэтой же поверхности.

Draw(x,y,b) – выводит от точки с координатами (x,y) битовый образb. Если значение свойстваTransparentповерхности, на которую выполняется вывод равноtrue, то точки, цвет которых совпадает с цветом левой нижней точки битового образа, не отображаются.

LineTo(x,y) – вычерчивает линию из текущей точки в точку с указанными координатами. Вид линии определяет свойствоPen.

MoveTo(x,y) – помещает указатель текущей точки в точку с указанными координатами.

PolyLine(p1) – вычерчивает ломанную линию. Координаты точек перегиба задает параметрp1 – массив структур типаTPoint. Если первый и последний элементы массива одинаковые, то будет вычерчен замкнутый контур. Вид линии определяет свойствоPen.

Poligon(p1) –вычерчивает и закрашивает многоугольник. Координаты углов задает параметрp1 массив структур типаTPoint. Первый и последний элементы массива должны быть одинаковые. Вид границы определяет свойствоPen, цвет и стиль закраски внутренней области – свойствоBrush.

Ellipse(x1,y,x2,y2) – вычерчивает эллипс, окружность или круг. Параметрыx1,y1,x2by2 задают размер прямоугольника, в который вписывается эллипс. Вид линии определяет свойствоPen.

Arc(x1,y1,x2,y2,x3,y3,x4,y4) – вычерчивает дугу. Параметрыx1,y1,x2,y2 определяют эллипс, из которого вырезается дуга, параметрыx3,y3,x4 иy4 – координаты концов дуги. Дуга вычерчивается против часовой стрелки от точки (x3,y3) к точке (x4,y4). Вид линии (границы) определяет свойствоPen, цвет и способ закраски внутренней области – свойствоBrush.

Rectangle(x1,y,x2,y2) – вычерчивает прямоугольник. Параметрыx1,y1, x2 иy2 задают координаты левого верхнего и правого нижнего углов. Вид линии определяет свойствоPen, цвет и способ закраски внутренней области – свойствоBrush.

RoundRec(x1,y1,x2,y2,x3,y3) – вычерчивает прямоугольник со скругленными углами. Параметрыx1,y1,x2 иy2 задают координаты левого верхнего и правого нижнего углов,x3 иy3 – радиус закругления. Вид линии определяет свойствоPen, цвет и способ закраски внутренней области – свойствоBrush.

Свойства:

Transparentпризнак использования «прозрачного» цвета при выводе битового образа методомDraw. Если значение свойства равноtrue, то точки, цвет которых совпадает с цветом левой нижней точки битового образа, не отображаются.

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

Свойства объекта Pen:

Color– цвет линии (clBlack– черный;clMaroon– каштановый;clGreen– зеленый;clOlive– оливковый;clNavy– темно-синий;clPurple– розовый;clTeal– зелено-голубой;clGray– серый;clSilver– серебристый;clRedкрасный;clLime– салатный;clBlue– синий;clFuchsia– ярко-розовый;clAqua– бирюзовый;clWhite– белый).

Style– стиль (вид) линии. Линияv;tnбыть:psSolid– сплошная;psDash– пунктирная (длинные штрихи);psDol– пунктирная (короткие штрихи);psDashDot– пунктирная (чередование длинного и короткого штрихов);psDashDotDot– пунктирная (чередование одного длинного и двух коротких штрихов);psClear– не отображается (используется, если не надо изображать границу, например, прямоугольника).

Width– толщина линии задается в пикселях. Толщина пунктирной линии не может быть больше 2.

Brush- свойствоBrushпредставляет собой объект, который является составной частью объектаCanvas. СвойствоBrushопределяет цвет, и стиль закраски внутренних областей контуров, вычерчиваемых методами вывода графических примитивов.

Свойства объекта Brush:

Color– цвет закрашивания замкнутой области.

Style - стиль (тип) заполнения области (bsSolid– сплошная заливка;bsClear– область не закрашивается;bsHorizontal– горизонтальная штриховка;bsVertical– вертикальная штриховка;bsFDiagonal– диагональная штриховка с наклоном линии вперед;bsBDiagonal– диагональная штриховка с наклоном линии назад;bsCross– горизонтально-вертикальная штриховка, в клетку;bsDiagCross– диагональная штриховка в клетку).

    1. Компонент TShape

Предоставляет набор геометрических фигур (примитивов), которые можно поместить в любом месте формы. Их можно использовать для придания приложения оригинального вида или для создания иллюстрированного фона динамического объекта.

Свойства:

stCircleкруг.

stEllipsэллипс.

stRectangle– прямоугольник.

stRoundRect – прямоугольник с скругленными углами.

stRoundSquare- квадрат со скругленными углами.

stSquare– квадрат.

    1. Компонент TMediaPlayer

Позволяет воспроизвести видео ролик, звук и сопровождаемую звуком анимацию.

Свойства:

DeviceTypeтип устройства. Определяет конкретное устройство, которое представляет собой компонентMediaPlayer. Тип устройства задается именованной константой:dtAutoSelect– тип устройства определяется автоматически,dtAVIVideo– видеопроигрыватель,dtVaweAudio– проигрыватель звука,dtCDAudio–CD– проигрыватель.

FileName– имя файла, в котором находится воспроизводимый звуковой фрагмент или видео ролик.

AutoOpen– признак автоматического открытия сразу после запуска программы, файла видео ролика или звукового фрагмента.

Display– определяет компонент, на поверхности которого воспроизводится видео ролик (обычно в качестве экрана для отображения видео используют компонентPanel).

VisibleButtons– составное свойство. Определяет видимые кнопки компонента. Позволяет сделать невидимыми некоторые кнопки.

  1. События

Событие – это смена состояния программного объекта, в том числе и визуального, например, щелчок мышью на визуальном объекте. Событие сопровождается вызовом обработчика события. Обработчик события это специальная компонентная функция классаTForm1, которая имеет стандартный заголовок. В теле функции могут быть любые операторы, в том числе операторы вызова внешних по отношению к классуTForm1 функций. События имеют стандартные зарезервированные в системе имена. Имена событий являются по существу указателями на соответствующие функции-обработчики событий. При создании обработчика события его адресом инициализируется соответствующий указатель (имя обработчика появляется в белом поле справа от имени события). Имена и смысл событий приведены ниже.

OnClickпри щелчке левой кнопкой мыши.

OnDblClick- при двойном щелчке левой кнопкой мыши.

OnMouseDown- при нажатии кнопки мыши.

OnMouseUpпри отпускании кнопки мыши.

OnMouseMoveпри перемещении мыши.

OnKeyPressпри нажатии клавиши клавиатуры.

OnKeyDownпри нажатии клавиши клавиатуры. СобытияOnKeyDownиOnKeyPress– это чередующиеся, повторяющиеся события, которые происходят до тех пор, пока не будет отпущена удерживаемая клавиша (в этот момент происходит событиеOnKeyUp).

OnKeyUp– при отпускании нажатой клавиши клавиатуры.

OnCreate– при создании объекта (формы, элемента управления). Процедура обработки этого события обычно используется для инициализации переменных, выполнения подготовительных действий.

OnPaint– при появлении окна на экране в начале работы программы, после появления части окна, которая, например, была закрыта другим окном и в других случаях. Событие сообщает о необходимости обновить (перерисовать) окно.

OnEnter– при получении элементом правления фокуса ввода.

OnExit– при потере элементом управления фокуса ввода.

  1. Строковый тип. Операции и функции работы со строками

    1. Строка как массив символов

Варианты определения:

сhars[ ] = “строка”; // в конец строки автоматически добавляется символ ‘\0’, поэтому

char*s= “строка”; // длина строки в данном случае равна 7.

charbuff[100]; // длина строки, которую можно хранить вbuff, не может быть

// больше 99.

Функции для работы со строками.

strcpy(buff, “Текст, копируемый вbuff”);

char s1[20] = “текст 1”; char s2[10] = “текст 2”;

strcat(s1,s2); // к строкеs1 добавляется строкаs2

strstr(s1,s2); //ищет в строкеs1 первое вхождение текстаs2 и, если поиск прошел

// удачно, возвращает указатель на первый символ этого вхождения.

    1. Строка типа AnsiString

При объявлении переменные типа AnsiStringинициализируются пустыми строками.

AnsiString–это класс, в котором перегружены стандартные операции:

а) сравнения: ==, !=, >, <, <=, >=.

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

б) присваивания и конкатенации: =, +=, +.

Знак плюс имеет смысл операции склеивания строк (конкатенации), а операция ‘=’ – это операция копирования.

в) индексации [].

К переменной типа AnsiStringможно обращаться как к массиву символов с помощью операции []. Индексы начинаются с 1.

С объектами типа AnsiStringсвязано множество компонентных функций классаAnsiString. Вызов функций осуществляется через объект типаAnsiString, например,

s1.fun(параметры). Здесьs1 – это объект типаAnsiString. Ниже приведены некоторые функции:

Insert(s2,k)– вставляет строкуs2 в строкуs1, начиная с индексаk.

Length() – возвращает число символов в строкеs1.

Pos(s2)– возвращает индекс первого символа первого вхождения строкиs2 вs1. индексы начинаются с 1. Еслиs2 не содержится вs1, возвращается 0. Индексы строки начинаются с 1.

SubString(n,m)– возвращает подстроку, начинающуюся с позицииnи содержащую число символов, не превышающееm( до конца строки т.е. – до символа ‘\0’) либо до символаm.

Delete(m,n)– удаляетnсимволов из строкиs1, начиная с позицииm. Параметрыm,n– целые.

Insert(s2,m)– вставляет в строкуs1 подстрокуs2, начиная с позицииm.

IsDelimiter(s2,n)– возвращаетtrue, если символ строкиs1 с индексомnявляется одним из разделителей, указанных в строкеs2.

c_str()– возвращает строку типаcharс нулевым символом в конце, содержащую текст строкиs1.

ToDouble() – преобразует строку в число с плавающей точкой. Если строку не соответствует формату числа с плавающей точкой, генерируется исключениеEConvertError.

ToInt()– преобразует строку в целое число. Если строка не соответствует формату целого числа, генерируется исключениеEConvertError.

    1. Примеры работы со строками типа AnsiString

  1. Найти в строке s1 фрагмент текста, заданного строкойs2 и заменить его текстом строкиs3.

AnsiString s1,s2,s3;

/* инициализация строк s1,s2,s3 */

int i = s1.Pos(s2); // найти …

if(i) Label -> Caption = s1.SubString(1,i-1) + s3 + s1.SubString(i+s2.Length(),255);

else Label -> Caption = “Текст не найден”;

Результирующая строка получается путем склеивания:

А) начальной части строки s1, расположенной до индекса первого символа найденной подстроки:

s1.SubString(1,i-1)

Б) строки s3 и

В) заключительной части строки s1,расположенной после найденного вхождения

s1.SubString(i+s2.Length(),255).

  1. В строке s1 заменить все вхожденияs2 на строкуs3.

int i0 = 0, i = s1.Pos(s2);

while(i)

{ s1 = s1.SubString(1,i+i0-1) + s3 + s1.SubString(i+i0+s2.Length(),255);

i0 += i-1+s3.Length();

i = s1.SubString(i0+1,255).Pos(s2);

}

  1. Произвести контекстную замену:

int i0 = 0, i = s1.Pos(s2);

while(i>i0)

{s1.Delete(i, s2.Length());

s1.Insert(s3, i);

i = i0 – 1 + s1.SubString(i0, 255).Pos(s2);

}

Соседние файлы в папке Курсовик ПиОА