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

Компонент в dcu...   Найти похожие ветки 

← →
lookin ©   (2005-09-14 18:17) [0]

Компонент в dcu, подключен к другому компоненту и заявлен там как свойство. Почему редакция свойств этого компонента (который в dcu) легко осуществляется в дизайн-тайме, но сбрасывается в рантайме до дефолтных?


← →
Юрий Зотов ©   (2005-09-14 21:23) [1]

Похоже на ошибку в коде (что-то не так с сохраненим в DFM).


← →
lookin ©   (2005-09-14 21:49) [2]

[1] Юрий Зотов ©   (14.09.05 21:23)

А как это поправить?


← →
Юрий Зотов ©   (2005-09-15 03:27) [3]

> lookin ©   (14.09.05 21:49) [2]

Хороший вопрос. Но как на него ответить, не видя ни строчки кода?


← →
lookin ©   (2005-09-15 03:35) [4]

[3] Юрий Зотов ©   (15.09.05 03:27)

Еще б кто подсказхал, какую строчку привести...


← →
Юрий Зотов ©   (2005-09-15 04:05) [5]

Можно 17-ю. Ошибка обычно в ней.
Но лучше - весь.


← →
lookin ©   (2005-09-15 04:12) [6]

[5] Юрий Зотов ©   (15.09.05 04:05)

Весь не позволяет... Форум...


← →
Юрий Зотов ©   (2005-09-15 05:39) [7]

Тогда для начала - объявление класса. Там посмотрим, что потребуется еще.


← →
lookin ©   (2005-09-16 18:22) [8]

>>Тогда для начала - объявление класса

Ну если это что то скажет...

type TEqapMacro = class(TComponent)
    private
      FMacroSyntax: TAdvPascalMemoStyler;
      procedure SetMacroSyntax(MacroSyntax: TAdvPascalMemoStyler);
 published
      property MacroSyntax: TAdvPascalMemoStyler read FMacroSyntax write SetMacroSyntax;
 end;

...

constructor TEqapMacro.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
 FMacroSyntax:=TAdvPascalMemoStyler.Create(self);
end;

procedure TEqapMacro.SetMacroSyntax(MacroSyntax: TAdvPascalMemoStyler);
begin
 FMacroSyntax:=MacroSyntax;
end;


← →
Юрий Зотов ©   (2005-09-16 20:10) [9]

type
 TYzComponentContainer = class(TComponent)
 private
   FInternalComponent: TComponent;
   procedure SetInternalComponent(const Value: TComponent);
 published
   constructor Create(AOwner: TComponent); override;
   property InternalComponent: TComponent read FInternalComponent write SetInternalComponent;
 end;

constructor TYzComponentContainer.Create(AOwner: TComponent);
begin
 inherited;
 FInternalComponent := TComponent.Create(Self);
 FInternalComponent.SetSubComponent(True)
end;

procedure TYzComponentContainer.SetInternalComponent(const Value: TComponent);
begin
 FInternalComponent.Assign(Value)
end;


← →
Юрий Зотов ©   (2005-09-16 20:14) [10]

Неточность - конструктор, конечно же, в public, не в published.


← →
lookin ©   (2005-09-17 13:53) [11]

Премного благодарен, все стало ясно...



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

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



Память: 0.47 MB
Время: 0.025 c
2-1140461400
ForX
2006-02-20 21:50
2006.03.12
MySQL "Unable to load libmysql.dll"


2-1140444833
veb
2006-02-20 17:13
2006.03.12
Русские вопросики на не русских виндах


15-1139919604
Digitman
2006-02-14 15:20
2006.03.12
ASIO DDK


2-1140503578
Wood
2006-02-21 09:32
2006.03.12
Закрыть TExcelApplication без сохранения


3-1137613145
Dataqbazer
2006-01-18 22:39
2006.03.12
Как правльно? в чем может быть ошибка?




   Наверх