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

Литература

  1. Архангельский А.Я. Программирование в Delphi 6. – М.: ЗАО «Издательство БИНОМ», 2002. – 1120 с.

  2. Фаронов В.В. Delphi 6. Учебный курс. – М.: Нолидж, 2001. - 670 c.

  3. Тейксейра, Стив и Пачеко, Ксавье. Delphi 6. Руководство разрабочика. Том 1. Основные методы и технологии. Пер. с англ. Уч. пос. – М.: Изд. дом «Вильямс», - 2001. - 832 с.

  4. Тейксейра, Стив и Пачеко, Ксавье. Delphi 6. Руководство разрабочика. Том 2. Разработка компонентов и работа с базами данных. Пер. с англ. Уч. пос. - М.: Изд. дом «Вильямс», 2001. – 992 с.

  5. Сван, Том. Delphi 4. Библия разработчика: Пер. с англ. – М.: СПб.: Диалектика, 1998. – 672 с.

  6. Федоров А.. Delphi 5.0 для всех. -М.: Тоо фирма “КомпьютерПресс”, 1998. - 464 с.

  7. Марко Кэнту. Delphi 5 для профессионалов. - СПб.: Питер. 2001. – 944 с.

  8. Бобровский С. Delphi 5: учебный курс – СПб: Издательство «Питер», 2000.- 640 с.

Дополнительная литература

  1. Рубенкин Нейл Дж.. Программирование в Delphi для “чайников” - К.: Диалектика, 1996. - 304 с.

  2. Дарахвелидзе П.Г., Марков Е.П. Delphi - Среда визуального программирования. - СП.: - BHV, Санкт-Петербург, 1986. - 352 с.

  3. Дэн Оузьер, и др. Delphi 3. Освой самостоятельно. / Пер. с англ. – М.: Издательство БИНОМ, 1998. – 560 с.

12. Управление программой с помощью панели инструментов

Цель: Научиться подключать инструментальную панель, изучить основные свойства и типы кнопок, использование их для управления вычислительным процессом.

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

Компонент tImageList

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

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

В окне редактора можно добавить в списки изображений нужное изображение, используя команду Add, удалить изображение командой Delete, очистить весь список командой Clear. При добавлении изображений в список открывается обычное окно открытия файла изображений. Необходимо иметь ввиду, что размеры всех изображений должны быть одинаковыми. Как правило это размер, используемый в меню, списках, кнопках.

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

Компонент tToolBar- инструментальная панель

TToolBar

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

Главная отличительная черта TToolBar - его способность гибкого управления дочерними элементами, которые он может группировать, выравнивать по размерам, располагать в несколько рядов. Компонент может манипулировать любыми вставленными в него дочерними элементами, но все его возможности в полной мере проявляются только при использовании специально для него разработанного компонента TToolButton (инструментальная кнопка). Этот компонент похож на кнопку TSpeedButton, но в палитре компонентов его нет.

Для того, чтобы вставить TToolButton в инструментальную панель TToolBar, необходимо правой кнопкой щелкнуть на компоненте TToolBar и в открывшемся окне выбрать NewButton или NewSeparator (новый сепаратор). Сепараторы предназначены для функционального выделения на инструментальной панели групп элементов и представляют собой разновидности кнопок TToolButton.

Хотя компонент TToolButton не имеет свойства, предназначенного для хранения картинки, однако он умеет использовать контейнер TImageList, чтобы извлечь из него нужную картинку и поместить ее на инструментальную кнопку.

Методику использования TToolBar совместно с TToolButton рассмотрим на примере создания текстового редактора. Пусть требуемый дизайн программы имеет вид, показанный на фиг.1.

Фиг.1. Пример TToolBar с кнопками TToolButton

Методика использования TToolBar состоит в следующем.

1. Поместите на пустую форму компонент TImageList, щелкните по нему правой кнопкой мыши и выберите продолжение TImageList Editor.

2. Для заполнения контейнера TImageList1 подойдут любые небольшие по размеру изображения. К сожалению, растры из каталога images | buttons (полный путь: c:\Program Files\Common Files\Borland Shared\Images\Buttons), рассчитанные на использование в кнопках .

prope

ger;

prope TImag prope

TSpeedButton содержат по два изображения каждый - обычное и для запрещенной кнопки.

При добавлении изображений для кнопки TToolButton следует иметь ввиду, что использование заготовок из каталога images | buttons в кнопках TToolButton приведет к появлению для каждой кнопки по два изображения одновременно. При попытке добавить сдвоенное изображение командой Add редактора в контейнер TImageList DELPHI задаст вопрос: Размерность изображения больше размерности списка. Разделить на отдельные битовые матрицы? На данный вопрос надо отвечать положительно. Тогда загружаемая битовая матрица автоматически разделится на отдельные изображения и потом вы можете удалить те из них, которые Вам не нужны кнопкой Delete редактора.

3. Поместите на форму компонент TToolBar, в окне Инспектора объектов разыщите свойство Images, раскройте список в правой колонке строки Images и выберите ImageList1. Мы указали компоненту на источник изображений и можем теперь вставлять в него кнопки.

4. Щелкните по TToolBar правой кнопкой мыши и выберите New Button.

5. Вставьте еще две кнопки, после чего вставьте разделитель New Separator.

6. Разместите на ToolBar остальные кнопки и сепараторы (см. фиг.1).

7. Если вы захотите, чтобы кнопки имели модный «плоский» вид, установите в свойство Flat компонента ToolBar1 значение True.

Свойство Buttons компонента TToolBar позволяет обратиться к каждому его дочернему компоненту как к объекту класса TToolButton.

Вид изображения на кнопке определяется свойством ImageIndex компонента TToolButton. Оно определяет индекс изображения, хранящегося во внешнем компоненте ImageList. Указание на этот компонент задается свойствами Images и Disable Images компонента TToolBar. У кнопки есть и другие особенности: находиться в нажатом или отжатом состояниях и т.п.

Для компонента TToolBar определено событие OnResize, возникающее при изменении размеров компонента.

Листинг Unit DemoToolBar приводится ниже.

Unit DemoToolBar;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls,

Forms, Dialogs, StdCtrls, Buttons, ComCtrls, ImgList,

ToolWin;

type

TForm2 = class(TForm)

Memo1: TMemo;

OpenDialog1: TOpenDialog;

ToolBar1: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ToolButton5: TToolButton;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

ToolButton8: TToolButton;

ToolButton9: TToolButton;

ImageList1: TImageList;

SaveDialog1: TSaveDialog;

procedure FormCanResize(Sender: TObject; var NewWidth,

NewHeight: Integer; var Resize: Boolean);

procedure sbtExitClick(Sender: TObject);

procedure sbtNewClick(Sender: TObject);

procedure sbtOpenClick(Sender: TObject);

procedure sbtSaveClick(Sender: TObject);

procedure sbtCutClick(Sender: TObject);

procedure sbtCopyClick(Sender: TObject);

procedure sbtPasteClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.DFM}

procedure TForm2.FormCanResize(Sender: TObject; var NewWidth,

NewHeight: Integer; var Resize: Boolean);

begin

Memo1.Top := 25;

Memo1.Height := Form2.ClientHeight - 25;

end;

procedure TForm2.sbtExitClick(Sender: TObject);

begin

Close;

end;

procedure TForm2.sbtNewClick(Sender: TObject);

begin

Memo1.Lines.Clear;

end;

procedure TForm2.sbtOpenClick(Sender: TObject);

begin

if OpenDialog1.Execute then

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

end;

procedure TForm2.sbtSaveClick(Sender: TObject);

begin

if SaveDialog1.Execute then

Memo1.Lines.SaveToFile(SaveDialog1.FileName);

end;

procedure TForm2.sbtCutClick(Sender: TObject);

begin

Memo1.CutToClipboard;

end;

procedure TForm2.sbtCopyClick(Sender: TObject);

begin

Memo1.CopyToClipboard;

end;

procedure TForm2.sbtPasteClick(Sender: TObject);

begin

Memo1.PasteFromClipboard;

end;

end.

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