Шаг 208.
Автоматизация Microsoft Excel. Программирование свойств MS Excel.
Элементы коллекции CommandBars

    На этом шаге мы начнем знакомиться с элементами коллекции CommandBars.

    Рассмотрим свойства коллекции CommandBars. Как и любая коллекция, она содержит типичные свойства и методы. Свойство Count содержит количество элементов коллекции, метод Add позволяет добавить новый элемент коллекции (панель элементов управления), метод Item(i) возвращает ссылку на элемент коллекции. К специфическим свойствам относятся те, которые позволяют задавать режим отображения элементов коллекции. В таблице 1 представлены свойства и методы коллекции панелей элементов управления.

Таблица 1. Свойства и методы коллекции CommandBars
Свойство или метод Тип Описание
ActionControl Объект Ссылка на активный в данный момент элемент управления
ActiveMenuBar Объект Ссылка на активный в данный момент элемент меню
Add Метод Добавление элемента коллекции
Count Integer Количество элементов коллекции
DisplayTooltips Boolean True - включить подсказку для кнопок
DisplayKeysInTooltips Boolean True - включить в подсказку для кнопок сочетания "горячих" клавиш
FindControl Метод Поиск элемента коллекции
Item(i:integer) Объект Набор элементов коллекции
LargeButtons Boolean Переключение режима отображения больших/маленьких кнопок
MenuAnimationStyle Integer Эффект при выводе меню
ReleaseFocus Метод Обновление пользовательского интерфейса для всех элементов коллекции

    Рассмотрим некоторые свойства коллекции CommandBars, например, свойства, определяющие обшие визуальные характеристики панелей и элементов управления. Свойство LargeButtons коллекции позволяет устанавливать размеры кнопок на всех панелях (большие или маленькие). Для выбора большого размера кнопок установим значение этого свойства в True, для выбора малого размера - в False. По умолчанию это свойство имеет значение False.

    Следующая процедура позволяет задать большой размер для кнопок.

procedure TForm1.CheckBox1Click(Sender: TObject);
//Изменение размера кнопок
begin
  E.CommandBars.LargeButtons:=CheckBox1.Checked;
end;

    Выполнив данную процедуру, мы получим результат, который представлен на рисунке 1.


Рис.1. Выбраны большие кнопки для панелей управления

    Другими общими свойствами коллекции CommandBars являются два свойства логического типа, управляющие режимом подсказок для кнопок панелей. Свойство DisplayTooltips определяет, включена или отключена всплывающая подсказка. Свойство DisplayKeysInTooltips определяет присутствие в подсказке сочетания "горячих" клавиш (этот режим в Excel не используется).

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

procedure TForm1.CheckBox2Click(Sender: TObject);
//Изменение режима подсказок для кнопок
begin
  E.CommandBars.DisplayTooltips:=CheckBox2.Checked;
end;

    На рисунке 1 показана форма, использующая данную процедуру, а также главное окно Excel, в котором видна подсказка для кнопки Открыть.

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

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    procedure Button1Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure CheckBox2Click(Sender: TObject);
    procedure CheckBox3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

var
  E:variant;

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

procedure TForm1.CheckBox1Click(Sender: TObject);
//Изменение размера кнопок
begin
  E.CommandBars.LargeButtons:=CheckBox1.Checked;
end;

procedure TForm1.CheckBox2Click(Sender: TObject);
//Изменение режима подсказок для кнопок
begin
  E.CommandBars.DisplayTooltips:=CheckBox2.Checked;
end;

procedure TForm1.CheckBox3Click(Sender: TObject);
//Отображение в подсказке сочетания клавиш
begin
  E.CommandBars.DisplayKeysInTooltips:=CheckBox3.Checked;
end;

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

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




Предыдущий шаг Содержание Следующий шаг