Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Добавление компонентов в хранилище объектов

2017-06-02 271
Добавление компонентов в хранилище объектов 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

 

В случае необходимости в Object Repository можно добавлять собственные диалоговые следующим образом:

1. Щелкнуть правой кнопкой мыши на диалоговом окне

2. Из контекстно-зависимого меню выбрать командуAdd to Repository

3.Задать имя нового объекта, описать элемент, выбрать закладку, где будет размещен объект, выбрать пиктограмму.

 

Создание собственного шаблона

 

1. Разместить на форме необходимые компоненты.

2. Установить через Object Inspector свойства каждого элемента.

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

4. С использованием мыши выбрать все компоненты, которые необходимо добавить в шаблон. После выбора компоненты обрамляются серым цветом.

5. Из меню Component выбрать команду для Delphi 3 Add Component Template…, а для Delphi 4 Create Component Template…

6. В диалоге ввести имя шаблона, страницу Палитры компонентов, пиктограмму.

 

Примечание: Шаблон компонента в любое время можно удалить из Палитры компонентов по команде Configure Palette из меню Component с последующей выборкой опции Delete.

 

Использование циклов

Пример FOR- WHILE-REPEAT

1.В новый проект надо поместить справа 3 кнопки с именами

Button1.Caption - FOR

Button2.Caption - WHILE

Button3. Caption - REPEAT

и из палитры Standart элемент List Box (расположив его в первой части формы)

2. Дважды щелкнув по каждой кнопке, сформировать обработчик сообщений OnClick. И в соответствующем разделе редактора для каждой кнопки набрать следующее:

 

Procedure TForm1.Button1_FORClick (Sender: T Object);

Var

i: integer;

Begin

ListBox1.Items.Clear;

FOR i: = 1 to 20 do

ListBox1.Items.Add (‘ String ‘ + IntToStr (I));

end;

Procedure TForm1.Button 2_WhileClick (Sender: TObject);

Var

i: integer;

Begin

ListBox1.Items.Clear;

Randomize;

i: =0;

While i < 1000 do begin

i: = i + Raudom (100);

ListBox1.Items.Add (‘ Random Number: + IntToStr (I));

end;

end;

Procedure TForm1.Button3_RepeatClick (Sender: T Object);

Var

i: integer;

Begin

List Box1.Items.Clear;

Randomize;

i: = 0;

Repeat

i: = i + Random (100);

ListBox1.Items.Add (‘ Random Number: ‘ + IntToStr (I));

Until(i>1000);

end;

 

Процедура Randomize инициализирует генератор случайных чисел и функцию Random со значением диапозона, равным 100.

 

Процедуры и функции, определяемые пользователем

 

Заголовок и тело процедуры или функции описывается сразу после слова implementation перед всеми другими действиями.

 

 

Пример пользовательской процедуры

1. На форме создать 2 метки и 2 кнопки.

2. Для кнопок вписать содержимое процедур Button1Click и Button2Click.

 

unit Unit22;

Interface

Uses

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

Type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

Label1: TLabel;

Label2: TLabel;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

Private

{ Private declarations }

Public

{ Public declarations }

end;

Var

Form1: TForm1;

Implementation

PROCEDURE ShowStr (mo: INTEGER; lblLabel: TLabel);

{ьщ – параметр, по которому определяется выбор внутри процедуры, а lblLabel – êîìïîíåíò, ÷åðåç êîòîðûé ïðîèçâîäèòñÿ âûâîä èíôîðìàöèè}

VAR

s1: STRING;

s2: STRING;

BEGIN

IF mo = 1 THEN

BEGIN

s1:= '11111';

s2:= '222222';

END

ELSE

BEGIN

s1:= '33333';

s2:= '444444';

END;

lblLabel.Caption:= s1 + s2;

END;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);

CONST

sh1 = 1;

Begin

// ВЫЗВАТЬ ПРОЦЕДУРУ

ShowStr (sh1, label1);

end;

procedure TForm1.Button2Click(Sender: TObject);

CONST

sh1 = 1;

sh2 = 2;

Begin

// ВЫЗВАТЬ ПРОЦЕДУРУ

ShowStr (sh2, label2);

end;

End.

 

В данном примере пользовательская процедура может использоваться только внутри и для данного модуля. Если пользовательскую процедуру надо использовать и в другиз модулях приложения, то надо оператор заголовка процедуры поместить в раздел VAR части INTERFACE, повторив и заголовок, и тело в разделе IMPLEMENTATION.

Для вызова пользовательской процедуры из другого модуля, надо зтот другой модуль связать с модулем, в котором располагается сама процедура. через File/Use Unit.

 

 

Часто используемые процедуры и функции

Функция Copy

 

function Copy(s:string; Start,Size:Integer):String;

S: Строка, из которой копируются символы

Start: Позиция в строке, начиная с котрой выполняется копирование

Size: Размер копируемой строки

 

Функция ExtractFileName

 

function ExtractFileName(const Path: string): string;

Данная функция извлекает из полного пути доступа к файлу только его имя.

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

Procedure Tform1.Button1Click(Sender:TObject);

var FileName, FullPath:string;

Begin

{извлечь имя файла из пути, возвращенного из диалога Open}


Поделиться с друзьями:

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

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

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.014 с.