Вниз
Скачать: CL | DM;

Создание своих событий для класса   Найти похожие ветки 

← →
SkyRanger ©   (2005-03-09 03:20) [0]

Всем привет! Столкнулся с такой вот трудностью. У меня есть класс который выполняет некие действия с файлами и хочется сделать на форме индикатор т.е. что и с какими файлами в данный момент происходит.
Класс невизуальный. Т.е. тут 2 пути или вставить в Impelementation
uses МояФорма;

Что мене не устраивает!

Либо как то создать событие и каждый раз когда надо вывести сообщение присваивать свойству например StatusTxt это сообщение и каким то образом извещать о этом счастливом событии форму чтобы происходила на ней окончательная отрисовка.

Посоветуйте как поизящнее решить эту задачу.


← →
PKT   (2005-03-09 03:50) [1]

Ну, как вариант так:

В модуле класса, "кторый выполняет некие действия с файлами"
добавить событие

type
 TMyClass = object(...)
 private
   ........
   FAction: TNotifyEvent;
   ........
   procedure Action;
   ........
   property OnAction: TNotifyEvent read FAction write FAction;
 end;

В процедуру класса, где собственно происходит Ваша обработка, добавьте:

procedure TMyClass.Action;
begin
 ................
 if Assign(FAction) then FAction(Self);
end;

************************************************
В вызывающей форме следующее:

type
 TMyForm = class(TForm)
 .............

   procedure MyAction(Sender: TObject);
 end;

procedure MyAction(Sender: TObject);
begin
 StatusTxt.Caption :=
   MyClass.СвойствоКлассаСИнформациейОбОбновлении
end;

procedure TMyForm.FormCreate(Sender: TObject);
begin
 MyClass.OnAction := MyAction;
end;


← →
SkyRanger ©   (2005-03-09 06:00) [2]

Большое сапасибо :) ща попробую!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
14-1109525705
Piter
2005-02-27 20:35
2005.03.20
Где достать декомпилятор для Visual Basic?


6-1105989056
vic_vm
2005-01-17 22:10
2005.03.20
Определить IP по доменному имени при выходе в инетчерез proxy


4-1107414279
ksa2002
2005-02-03 10:04
2005.03.20
Переменные в потоке


3-1108553672
Виктор
2005-02-16 14:34
2005.03.20
Количество коннектов под Firebird Classic


3-1108923878
Shamansky
2005-02-20 21:24
2005.03.20
Связанные таблицы в Access




   Наверх