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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.034 c
11-1140201303
Yurka R
2006-02-17 21:35
2006.12.10
Помогите начинающему в некоторых вопросах!


3-1159861658
Itonix
2006-10-03 11:47
2006.12.10
Два запроса


15-1164266454
wezzz
2006-11-23 10:20
2006.12.10
Вопрос по IIS


15-1163975713
Фара
2006-11-20 01:35
2006.12.10
Можно ли на Дельфи написать плагин для FAR а ?


3-1159871123
ККВ
2006-10-03 14:25
2006.12.10
Как получить значение поля?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский