Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Вниз

Столкнулся с проблемой при приминении паттерна стратегия   Найти похожие ветки 

 
basken   (2004-04-09 15:57) [0]

Столкнулся  с такой проблемой при приминении паттерна стратегия в создании компонента.

Есть абстрактный класс TStrategy и конкретные реализации стратегии TCreateStringStrategy, TDBCreateStringStrategy которые реализуют(каждая реализация по своему) интерфейс класса TStrategy и имеют свои обработчики событий. Так вот вопрос  – каким  образом можно отобразить в TCreatorStrategyAction обработчики событий конкретной реализации TStrategy, возможно ли это? Со свойствами конкретных реализаций класса TStrategy всё впорядке – отображаються, а вот обработчики событий не видно – можно ли их отобразить(очень надо)? За ранее огромное спасибо.

TCreatorStrategyAction = class(TCustomAction)
 private
   FStrategyParams: TStrategy;
   function GetStrategyType: String;
   procedure SetStrategyParams(Value: TStrategy);
   procedure SetStrategyType(const Value: String);
 public
   constructor Create(AOwner: TComponent); override;
   destructor Destroy; override;
   procedure ExecuteTarget(Target: TObject); override;
   procedure UpdateTarget(Target: TObject); override;
 published
   property StrategyType: String read GetStrategyType write SetStrategyType;
   property StrategyParams: TStrategy read FStrategyParams write SetStrategyParams;
 end;


 
WebErr ©   (2004-04-09 16:12) [1]


> За ранее

"Заранее" пишется вместе
Что-то я и событий-то не вижу!!!


 
Fay ©   (2004-04-09 16:14) [2]

2WebErr
Он и говорит - "обработчики событий не видно"!
8))


 
WebErr ©   (2004-04-09 16:19) [3]

Ээй! Там, в лодке!
...
private
 FOnSobytie: TSobytie;
...
published:
 property OnSobytie: TSobytie read FOnSobytie write FOnSobytie;
...
end;


 
WebErr ©   (2004-04-09 16:20) [4]

Ой, забыл ":))))" в конце :))))


 
basken   (2004-04-09 17:02) [5]

События находяться в конкретных реализациях класаа TStrategy

TCreateStringStrategy = class(TStrategy)
 ....
 published
   property CreateString: TCreateString read FCreateString write FCreateString;
   property OnCreateObject: TCreateObjectEvent read FOnCreateObject
     write FOnCreateObject;
   property OnGetCreateString: TGetCreateString read FOnGetCreateString
     write FOnGetCreateString;
   property OnGetParamValue: TGetParamValueEvent read FOnGetParamValue
     write FOnGetParamValue;
 end;


 
basken   (2004-04-09 17:03) [6]

События находяться в конкретных реализациях(у каждой свои) класса TStrategy

TCreateStringStrategy = class(TStrategy)
 ....
 published
   property CreateString: TCreateString read FCreateString write FCreateString;
   property OnCreateObject: TCreateObjectEvent read FOnCreateObject
     write FOnCreateObject;
   property OnGetCreateString: TGetCreateString read FOnGetCreateString
     write FOnGetCreateString;
   property OnGetParamValue: TGetParamValueEvent read FOnGetParamValue
     write FOnGetParamValue;
 end;


 
WebErr ©   (2004-04-09 17:18) [7]

Дык пропиши их в наследниках!!!
property OnSobytie: TSobytie;
без read-write директив!!!


 
Игорь Шевченко ©   (2004-04-09 17:25) [8]

А где надо отобразить ?


 
basken   (2004-04-09 17:28) [9]

TCreateStringStrategy - єто и есть наследники TStrategy ;-). А нужно что бы в классе TCreatorStrategyAction отображались события конкретной реализации.


 
WebErr ©   (2004-04-09 17:39) [10]

Я тебя понял, а вот ты меня - нет! :))))


 
basken   (2004-04-09 18:06) [11]

Дык пропиши их в наследниках!!!
       property OnSobytie: TSobytie;
       без read-write директив!!!

Круто - от этого они наверное станут более видимые!  ;-)



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

Форум: "Основная";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.034 c
3-1080716116
Hawk2
2004-03-31 10:55
2004.04.25
Почему Commit не отсылает данные на сервер?


1-1081334933
cvg
2004-04-07 14:48
2004.04.25
Проблема с выводом графиков. Это баг от Borland?


7-1077726910
Phantomaz
2004-02-25 19:35
2004.04.25
Почему SetWindowsHookEx не пашет, если активно Dos-окно ?


9-1067791476
DRON
2003-11-02 19:44
2004.04.25
Как динамически менять степень прозрачности под PowerDraw?


14-1080746752
AlexKniga
2004-03-31 19:25
2004.04.25
Кто-нибудь установил Win2K/XP на SATA RAID без floppy?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский