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

Вниз

Проблема с ActiveX-контролом: "control ... has no parent window"   Найти похожие ветки 

 
3fc ©   (2004-10-13 08:12) [0]

Добрый день, уважаемые мастера!

Помогите, плиз, с данной проблемой. При регистрации ActiveX-компонента Delphi выдает вышеуказанное сообщение. Компонент выводит текст под произвольным углом средствами WinAPI. Код конструктора следующий:
...
type
 TRotateText = class(TWinControl)
 private
   Fdc: HDC;
...
constructor TRotateText.Create(AOwner: TComponent);
begin
 inherited Create(AOwner);
...
 Parent := nil;                      
 Fdc := GetDC(Handle); //далее использую Fdc при выводе текста
...
end;
...
Что я делаю не так?


 
Юрий Зотов ©   (2004-10-13 13:35) [1]

GetDC(Handle)

Обращение к хэндлу окна происходит в конструкторе, когда окно еще не создано. Перенесите в метод СreateWnd ПОСЛЕ вызова inherited. И уберите Parent := nil. А при выводе текста, если есть опасность, что окна еще нет, проверяйте HandleAllocated.


 
3fc ©   (2004-10-14 08:10) [2]

Юрий Зотов

Ок, спасибо за совет, все работает.



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

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

Наверх




Память: 0.47 MB
Время: 0.033 c
4-1121761652
new12345
2005-07-19 12:27
2005.09.04
Проблема с hook ом


14-1123752846
.ruslan
2005-08-11 13:34
2005.09.04
Смена дизайна на www.delphimaster.ru


3-1122369826
Игорь М.
2005-07-26 13:23
2005.09.04
восстановление подключения с IterBase server ом


1-1124086008
Чайничек
2005-08-15 10:06
2005.09.04
Can not create file ...


3-1122291015
ArchValentin
2005-07-25 15:30
2005.09.04
Экспорт из Paradox в StringGrid или в Exel