Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.10;
Скачать: CL | DM;

Вниз

Приветствую. Возникла проблема при создании компонента   Найти похожие ветки 

 
dreamse   (2006-11-25 21:07) [0]

Со значением TFont. т.е у компонента уже есть свой Font но потребовалось создать ещё один. Нужен он для драгого действия т.е например для изменения шрифта при наведении курсора на кнопку

т.е код :


 TMyEfButton = class(TAdvGlowButton, IDesign)
 private
   FFontBlock: TFont;
   procedure setFontBlock(const Value: TFont);
 protected
 public
   constructor Create(AOwner: TComponent); override;
 published
   property Description: TStringList read FDescription write
   property FontBlock: TFont read FFontBlock write setFontBlock;
 end;


Свойство создаёться но при нажатии на кнопку редактирования шрифта вылетает ошибка обращения к памяти. :(

Как я понял не создаёться сам объект хотя он присутствует в инспекторе объектов. Но его нельзя редактировать. т.е попытаться в инспекторе развернуть свойства FontBlock ничего не показываеться как будто бы свойст внутри его нет :(

Что делать ?


 
dreamse   (2006-11-25 21:08) [1]

При попытке вызвать

FontBlock.create или FFontBlock.create вылетает та же ошибка доступа к пямяти.


 
dreamse   (2006-11-25 21:15) [2]

Вот тут : http://www.vr-online.ru/topic.php?id=7938

Дувушка приводит пример такой же с точно такой же проблемой. И всё решаеться переходом на Delphi 2005 но это же не выход :(

Что может быть ?


 
dreamse   (2006-11-25 21:18) [3]

Оказываеться перекрыл метод Create :)

FFontBlock:=TFont.Create;

Всё всем спасибо что помогли :)

Оказыватьеся сам всё могу решить :)


 
Джо ©   (2006-11-25 23:39) [4]

> [3] dreamse   (25.11.06 21:18)
> Оказываеться перекрыл метод Create :)
>
> FFontBlock:=TFont.Create;

Кроме того, нужно уничтожить экз. в Destroy.
Кроме того, в методе SetFontBlock нужно делать Assign.
В общем, смотри исходники любого компонента/класса в VCL, у которого есть свойство Font.


 
dreamse   (2006-11-26 13:11) [5]

> Джо ©   (25.11.06 23:39) [4]

Assign и Destroy написал ещё вчера , спасибо за помощь


 
ProgRAMmer Dimonych ©   (2006-11-26 13:13) [6]

> dreamse   (26.11.06 13:11) [5]
Рекомендуется, вообще-то .Free, т.к. безопаснее.


 
Джо ©   (2006-11-26 16:29) [7]

> [6] ProgRAMmer Dimonych ©   (26.11.06 13:13)
> > dreamse   (26.11.06 13:11) [5]
> Рекомендуется, вообще-то .Free, т.к. безопаснее.

Мы говорим о переопределении деструктора Destroy, а не о его вызове.



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

Текущий архив: 2006.12.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.109 c
15-1163624797
unknown
2006-11-16 00:06
2006.12.10
GMail


15-1163838143
SerJaNT
2006-11-18 11:22
2006.12.10
aDSL модем


15-1164049823
ArtemESC
2006-11-20 22:10
2006.12.10
Как найти человека в Московской Области?


2-1164220218
zep
2006-11-22 21:30
2006.12.10
TClientDataSet


15-1164108292
V.I.P
2006-11-21 14:24
2006.12.10
Нужно сделать программу за $$$