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

Нормальная Child - форма - как создать?   Найти похожие ветки 

 
tytus ©   (2007-07-02 11:45) [0]

По примеру Тейксейры и Пачеко создаю такую форму:
type
 TChildForm = class(TForm)
 private
   { Private declarations }
   FAsChild: Boolean;
   FTempParent: TWinControl;
 protected
   procedure CreateParams(var Params: TCreateParams); override;
   procedure Loaded; override;
 public
   { Public declarations }
   constructor Create(AOwner: TComponent); overload; override;
   constructor Create(AOwner: TComponent; AParent: TWinControl); reintroduce; overload;

   // The method below must be overridden to return either the main menu
   // of the form, or nil.
   function GetFormMenu: TMainMenu; virtual; abstract;
   function CanChange: Boolean; virtual;
 end;
Главная форма имеет FormStyle=fsMDIForm;
Дочерняя создается так:
NewForm:=TChildForm.Create(Application,Panel4);
Panel4 - для дочерней формы.
Так вот - заголовок дочерней формы не становится активным, тоесть она не получает фокус ввода. Из=за етого невозможно прокрутить frxReport.
Как создать нормальную дочернюю форму?


 
Плохиш ©   (2007-07-02 11:50) [1]

У дочерней должно быть FormStyle=fsMDIChild;


 
tytus ©   (2007-07-02 11:55) [2]

>Плохиш ©   (02.07.07 11:50) [1]
не помогло...
оставил fsNormal;


 
Игорь Шевченко ©   (2007-07-02 12:05) [3]

Тейксейра и Пачеко, да продлит Аллах драгоценные дни их жизни, явно указывают, в каких случаях создавать форму, как дочернее окно - а именно, для встраивания в другие формы.
В этом случае параметр Application в конструкторе есть полный бред.


> Так вот - заголовок дочерней формы не становится активным,
>  тоесть она не получает фокус ввода


Если ты смотришь, как сделано у Тейксейры и Пачеко, то в их случае, если форма создается, как дочернее окно, у нее вообще нет заголовка и фокус ввода получает родительская форма.



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

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



Память: 0.45 MB
Время: 0.013 c
2-1183443768
tytus
2007-07-03 10:22
2007.07.29
TSocketConnection - познее связывание - - в другом потоке.


15-1183343665
Grademax
2007-07-02 06:34
2007.07.29
Как определить наличие CD в приводе?


15-1183027152
Ega23
2007-06-28 14:39
2007.07.29
Class vs Record


15-1183515466
Slider007
2007-07-04 06:17
2007.07.29
С днем рождения ! 4 июля 2007 среда


6-1166771959
merko$
2006-12-22 10:19
2007.07.29
Как прочитать инфу из файла котор. хранится на другом ПК




   Наверх