![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
hawkins |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 8.9.2003 Репутация: нет Всего: нет |
Здраствуйте!Помогите понять ошибку:
Написал компонент - наследник TStringGrid. Добавил несколько свойств, перегрузил процедуры Paint, DrawCell. Далее написал программу: окно создает дочернее окно с несколькими стринг гридами(мой компонент) , если окрывать и закрывать дочернее окно несколько раз подряд то выползает ошибка 'Параметр задан неверно', затем ошибка 'Canvas dose not allow drawing' и зависает. А вот если в компоненте закоментировать кусок (в тексте компонента коментарий), то все нормально. Не пойму никак в чем дело ... Далее сокращенный текст компонента: TMy_StringGrid=class(TStringGrid) private procedure DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState); override; private ... protected ... FIndicators:TImageList; FIndicators2:TImageList; ... public ... constructor Create(AOwner: TComponent);override; destructor Destroy; procedure Paint;override; ... implementation const bmKey = 'AD_KEY2'; bmStar='AD_STAR'; ... constructor TMy_StringGrid.Create(AOwner: TComponent); var Bmp: TBitmap; Bmp2:TBitmap; begin //-- Если далее поставить коментарий то ошибки в про-ме не будет //-------- здесь начинается коментарий ------------- Bmp := TBitmap.Create; Bmp2:=TBitmap.Create; try Bmp.LoadFromResourceName(HInstance, bmKey); Bmp2.LoadFromResourceName(HInstance, bmStar); FIndicators := TImageList.CreateSize(Bmp.Width, Bmp.Height); FIndicators2 := TImageList.CreateSize(Bmp2.Width, Bmp2.Height); FIndicators.AddMasked(Bmp, clWhite); FIndicators2.AddMasked(Bmp2, clWhite); finally Bmp.Free; Bmp2.Free; end; //-------------- здесь коментарий заканчивается ------- inherited Create(AOwner); end; destructor TMy_StringGrid.Destroy; begin FIndicators2.Free; FIndicators2.Free; inherited Destroy; end; ... |
|||
|
||||
bear |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 28 Регистрация: 15.6.2004 Репутация: нет Всего: нет |
inherited Create(AOwner);в конструкторе поставь сразу после begin
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |