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

по поводу control ов   Найти похожие ветки 

 
Palladin ©   (2003-01-02 13:19) [0]

Такая ситуация
в dll у меня создается TEdit

MyEdit:=TEdit.Create(nil);
MyEdit.ParentWindow:=p_Owner.Handle;

p_Owner в главной программе (TScrollBox)
dll динамическая
Все нормально отрабатывает. Только маленькая трабла.
при таком способе создания созданый Edit не попадает
в список Conrtols у владельца.
а мне хотелось бы что бы все добавленые туда контролы выстраивались сверху вниз. То есть нужен простейший доступ хотя бы к полю top у всех подконтролов для ScrollBox"а.

Как мне его получить?
Или как правильно прицепить контрол чтобы он появлялся в списке Conrtols?


 
Song ©   (2003-01-02 13:37) [1]

А Parent задать забыл?


 
Palladin ©   (2003-01-02 13:49) [2]

если я создаю как

MyEdit:=TEdit.CreateParented(p_Owner.Handle);

выдается сообщение об ошибке. exception в общем.
а
MyEdit:=TEdit.Create(p_Owner)

не имеет смысла так как я MyEdit всеравно в ручную удаляю

чувствую здесь пахнет winapi...


 
asmith   (2003-01-02 14:29) [3]

Выход один - собрать апликацию и библиотеку с пакетами времени выполнения. Иначе - куча проблем, в том числе и замеченная тобой. Другие - невозможность обходить все контролы по Tab и Shift-TabЮ неправильная обработка фокуса и пр. Об этом недавно было много дискуссий в этом форуме.


 
Song ©   (2003-01-02 14:34) [4]

MyEdit.Parent:=p_Owner;


 
asmith   (2003-01-02 15:19) [5]

Это не поможет. Все равно в нужные моменты код VCL спросит парента вызовом GetParentForm (см. Forms.pas), там стоит "if Control is TCustomForm". Но TCustomForm в апликации и TCustomForm библиотеке будут совершенно разными типами, так что контрол, созданный в бибилиотеке не будет принадлежать форме из головной программы.



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

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



Память: 0.46 MB
Время: 0.02 c
14-37301
Song
2002-12-22 10:43
2003.01.13
Romkin, поздравляю с днём варенья!


6-37238
Mr. Moon
2002-11-12 14:57
2003.01.13
Сообщение по новелу


14-37352
Top Gun
2002-12-21 15:07
2003.01.13
проблемы с новым детонатором


4-37455
Maksss
2002-11-18 03:39
2003.01.13
Создание контролов


1-37113
Алексей П
2003-01-04 10:31
2003.01.13
*.dfm




   Наверх