Надпись

   
На этом шаге мы рассмотрим созлание надписи и перечислим основные свойства этого объекта.

   
Надпись (объект TextBox) создается с помощью метода AddTextbox коллекции Shapes.
При вызове этого метода необходимо указать параметры создаваемого объекта - направление текста объекта, его
координаты и размеры. Если метод AddTextbox вызывается из приложений Delphi, то переменные,
задающие координаты и размеры, должны иметь тип Extended. Следующий пример процедуры демонстрирует
использование данного метода в приложениях.

procedure TForm1.Button3Click(Sender: TObject);
//Создание надписи
const msoTextOrientationHorizontal=1;
var
  left,top:Extended;
begin
  left:=10;
  top:=11;
  if E.ActiveWorkBook.ActiveSheet.Shapes.Count>0 then
  begin
   left:=E.ActiveWorkBook.ActiveSheet.Shapes.
              item(E.ActiveWorkBook.ActiveSheet.Shapes.count).Left+20;
   top :=E.ActiveWorkBook.ActiveSheet.Shapes.
              item(E.ActiveWorkBook.ActiveSheet.Shapes.count).Top+20;
  end;
  E.ActiveWorkBook.ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal,
     left, top, 200, 100);
end;

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


Рис.1. Создание надписи

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

   
Приведем полный текст приложения.

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComObj, Spin;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
var
  E:variant;

{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);
//Создание объекта Excel и отображение окна
begin
  E:=CreateOleObject('Excel.Application');
  E.Visible:=True;
end;

procedure TForm1.Button2Click(Sender: TObject);
//Создание рабочей книги
begin
  E.WorkBooks.Add;
end;

procedure TForm1.Button3Click(Sender: TObject);
//Создание надписи
const msoTextOrientationHorizontal=1;
var
  left,top:Extended;
begin
  left:=10;
  top:=11;
  if E.ActiveWorkBook.ActiveSheet.Shapes.Count>0 then
  begin
   left:=E.ActiveWorkBook.ActiveSheet.Shapes.
        item(E.ActiveWorkBook.ActiveSheet.Shapes.count).Left+20;
   top :=E.ActiveWorkBook.ActiveSheet.Shapes.
        item(E.ActiveWorkBook.ActiveSheet.Shapes.count).Top+20;
  end;
  E.ActiveWorkBook.ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal,
     left, top, 200, 100);
end;

end.

Текст этого приложения можно взять здесь (6,1 Кб).

   
Даже если объект TextBox создан с определенными свойствами, это не значит, что свойства этого объекта нельзя
изменить впоследствии. Для этого необходимо получить доступ к созданному объекту, а затем к свойствам самого
объекта. Доступ к объекту коллекции Shapes можно получить, используя метод Item(i) данной коллекции.
Например, оператор

    Shape:=Shapes.Item (i);

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

   
Рассмотрим основные свойства объекта TextBox. Поскольку этот объект предназначен в основном для отображения
текста, параметры шрифта, а также направление и способ выравнивания текста являются одними из основных его
свойств. Внутренние поля тоже определяют положение текста внутри надписи. С использованием свойств объекта Line,
принадлежащего объекту TextBox, задаются тип, толщина и цвет линий, ограничивающих объект. Заливка
надписи (цветом, узором или рисунком) задается с помощью свойств и методов объекта Fill, который тоже
принадлежит объекту TextBox. Размер и положение надписи определяются ее свойствами Width, Height, Top, Left,
которые в приложениях Delphi должны иметь тип Extended.

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

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



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий