Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Форма из DLL: переключение фокуса


Автор: bns12 27.11.2008, 09:46
Здравствуйте, не могу решить такую проблему:

1. Мое основное приложение подгружает DLL, содержащию форму, с помощью CreateParented:
Код

constructor TMyForm._CreateParented( ctlParent: HWND; App: TApplication; Scr : TScreen );
begin
      Forms.Application := App;
      Forms.Screen := Scr;
      CreateParented( ctlParent );
end;

2. Все подключается и работает нормально, но при попытке использовать Tab для перехода между компонентами формы фокус форма теряет. 
3. Для борьбы с этим рекомендуют использовать TApplication/TScreen основного приложения. В примере выше это так и сделано, пробовал их разные комбинации, но не помогает.

Если у кого-нибудь есть практический опыт решенния такой задачи, подскажите, что я делаю не так.

Спасибо.

Автор: pseud 27.11.2008, 12:05
TWinControl.CreateParented

Creates and initializes a control as the child of a specified non-VCL container.
Код

сonstructor CreateParented(ParentWindow: HWnd);

Description

Call CreateParented to embed a new control in a non- VCL parent window. TActiveXControl objects call CreateParented to create an ActiveX control as a child of the host application’s client site window.

---------------

Ты уверен, что ето то что тебе нужно?
и что ты передаешь в ctlParent

Автор: bns12 27.11.2008, 16:45
В ctlParent я передаю handle TPanel, в который эта форма должна встраиваться. Она успешно туда встраивается, но между контролами этой формы не удается переключаться табом.

Автор: bns12 10.12.2008, 17:06
А можно еще раз поднять заданный вопрос? Решал ли кто-нибудь подобную проблему?

Спасибо.

Автор: Caduser 10.12.2011, 12:14
Цитата(bns12 @ 10.12.2008,  17:06)
А можно еще раз поднять заданный вопрос? Решал ли кто-нибудь подобную проблему?

Спасибо.

Аналогичная проблема, помогите!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)