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

Ошибка при динамическом создании TImageList   Найти похожие ветки 

 
alex_shkut ©   (2005-03-02 21:30) [0]

 FImageList:=TCustomImageList.Create(AOwner);
//=== Собственно, ToolBar ====
 FBtnBar:=TToolBar.Create(Self);
 FBtnBar.Parent:=FBtnPanel;
 FBtnBar.ShowCaptions:=true;
 FBtnBar.Images:=FImageList;


Вот здесь и вылазит ошибка:

Project raised exception class EInvalidOperation with message "Control "" has no parent window".

Кто знает, с чем это связано?


 
alex_shkut ©   (2005-03-02 21:48) [1]

Без этой строки все работает нормально, но нужны картинки.


 
Юрий Зотов ©   (2005-03-02 22:09) [2]

Уточните - где написан этот код?
Похоже, что слишком рано, когда еще не создано окно.


 
alex_shkut ©   (2005-03-02 22:50) [3]

Проще задача состоит в том, чтобы запихнуть Icon в Bitmap.
Я пытаюсь использовать ImageList как естественное свойство ToolBar но в конструкторе Create потомка TPanel, в которую я встраиваю ToolBar возникает ошибка.
Реализовано в отдельном модуле.
TPanel -> ToolBar+ImageList -> ToolButton+ImageIndex:Icon


 
Юрий Зотов ©   (2005-03-03 00:33) [4]

Многие методы оконных контролов реализованы посылкой сообщений окну. В конструкторе же создается сам объект, а его окно еще не создано - поэтому вызов таких методов в конструкторе, вообще говоря, ошибочен. И если контролы user32 обходят эту ситуацию автоматически, за счет вызова HandleNeeded, то контролы comctl32 (а к ним и относятся тулбары) такого не любят. Похоже, отсюда и ошибка.

Попробуйте перенести код из конструктора в CreateWnd, только обязательно после вызова inherited.


 
alex_shkut ©   (2005-03-03 11:33) [5]

Спасибо огромное.
Перенес FBtnBar.Images:=FImageList в процедуру CreateWnd и все стало нормально создаваться.



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

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



Память: 0.46 MB
Время: 0.025 c
1-1110184861
atruhin
2005-03-07 11:41
2005.03.20
Редактор XML по XSD шаблону


1-1109808715
rosl
2005-03-03 03:11
2005.03.20
мониторинг


6-1105989056
vic_vm
2005-01-17 22:10
2005.03.20
Определить IP по доменному имени при выходе в инетчерез proxy


1-1110055150
GranT
2005-03-05 23:39
2005.03.20
сворачивание окон


14-1109576048
DVM
2005-02-28 10:34
2005.03.20
Помогите потестировать скрипт PHP (разбор HTTP_USER_AGENT)




   Наверх