Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LYeKTsII_GURSKOGO_1.doc
Скачиваний:
10
Добавлен:
16.11.2019
Размер:
3.31 Mб
Скачать

Компонента tMemo

Компонент TMemo gредставляет собой редактор текста и предназначен для ввода, редактирования или отображения достаточно длинного текста. Текст хранится в свойстве Lines класса TString и таким образом представляет пронумерованный набор строк (нумерация начинается с нуля).

С помощью свойств и методов (Add, Delete, Clear, Count и т.д.) представляется возможность динамически формировать содержимое компонента. Многие свойства аналогичны свойствам рассмотренного компонента TEdit.

Основные свойства

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

WordWrap – свойство, которое позволяет управлять переносом слова на новую строку, может принимать булевские значения.

ScrollBars – позволяет устанавливать полосы скроллинга. Может принимать значения:

ssNone – без полос скроллинга,

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

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

ssBoth – обе полосы скроллинга.

При этом значение свойства WordWrap игнорируется.

Lines – с помощью этого свойства задается список строк, помещенных в редактор.

Чтобы поместить исходный текст в TMemo на стадии проектирования необходимо в инспекторе объектов выделить свойство Lines и в открывшемся окне диалога ввести соответствующий текст.

Компонент TMemo обрабатывает все события от мыши и клавиатуры, а также реагирует на активизацию компонента и снятию активизации, а также при изменении текста.

Компонент TMemo может также обмениваться информацией с буфером Сlipboard. Для этого используются методы:

CopyToClipBoard – копировать в буфер,

CutToClipBoard – вырезать,

PasteToClipBoard – вставить.

Для компонента TMemo может использоваться метод LoadFromFile, с помощью которого можно заполнить поле компонента из текстового файла. Возможна и обратная операция, т.е. можно сохранить содержимое компонента TMemo в файле с помощью метода SaveToFile.

Пример

Обработчик кнопки Button1 – Прочитать

If FileExist(Edit1.Text) then

Memo1.Lines.LoadFromFile(Edit1.Text);

Обработчик кнопки Button5 – Сохранить

If Length(Edit2.Text)<>0 then

Memo2.Lines.SaveToFile(Edit2.Text);

Обработчик кнопки Button2 – Копировать

Memo1.CopyToClipboard;

Обработчик кнопки Button4 - Вырезать

Memo2.CutToClipBoard;

Memo2.PastFromClipBoard;

У класса Tstrings имеются такие свойства

Count –целое число, определяющее количество строк,

Strings[Index] – с помощью которого можно получить строку с номером Index (нумерация строк начинается с 0).

Чтобы получить весь текст можно воспользоваться свойством Text. Чтобы обратиться к нулевой строке нужно

Memo1.Lines.Strings[0];

или

Memo1.Lines[0];

У класса TStrings имеются также методы

Add(s) позволяет добавить строку s в список,

Delete(Index) – удаление строки с номером Index,

Exchange(Index1, Index2) – можно поменять местами две строки,

Index of(s) – позволяет определить номер строки s или -1, если такой нет,

Insert(Index, s) вставит строку s после номера Index,

Move(CurIndex, NewIndex) - переместить строку СurIndex в строку Newindex.

Компонент TRadioButton

Этот компонент предназначен для включения в интерфейс программы зависимых переключателей. Управлять переключателями можно либо с помощью клавиатуры, либо мыши. Компонент TRadioButton имеет свойство Checked, предназначенное либо для включения переключателя, либо для проверки его состояния.

Текст, который должен быть записан рядом с кнопкой указывается в свойстве Caption. Где располагать текст: справа или слева указывается в свойстве Alignment.

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

Пример

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;

type

TForm1 = class(TForm)

RadioButton1: TRadioButton;

RadioButton2: TRadioButton;

RadioButton3: TRadioButton;

Button1: TButton;

Panel1: TPanel;

Panel2: TPanel;

procedure RadioButton1Click(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

procedure RadioButton3Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.RadioButton1Click(Sender: TObject);

begin

Panel1.Color := clRed;

end;

procedure TForm1.RadioButton2Click(Sender: TObject);

begin

Panel1.Color := clYellow;

end;

procedure TForm1.RadioButton3Click(Sender: TObject);

begin

Panel1.Color := clGreen;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

if RadioButton1.Checked then Panel2.Color := clRed;

if RadioButton2.Checked then Panel2.Color := clYellow;

if RadioButton3.Checked then Panel2.Color := clGreen;

end;

end.

Второй вариант может быть, когда создается один обработчик для всех трех кнопок:

procedure TForm1.RadioButton1Click(Sender: TObject);

begin

if (Sender as TRadiobutton) = RadioButton1 then

Panel1.Color:= clRed;

if (Sender as TRadiobutton) = RadioButton2 then

Panel1.Color:= clYellow;

if (Sender as TRadiobutton) = RadioButton3 then

Panel1.Color:= clGreen;

end;

В этом случае в конструкторе объектов следует каждой кнопке назначить этот обработчик.

Замечание. Первоначальное состояние кнопок можно установить с помощью конструктора объектов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]