Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Каждую дочернюю форму заставить полностью заполнять область главной

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

unit Unit1;

 interface

 uses
   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

 type
   TMDIForm = class(TForm)
   private
     { Private declarations }
     FMainWindowClientCoordinates: TRect;
     procedure SetMainWindowClientCoordinates(const Value: TRect);
     procedure NewChild(Sender: TObject);
   public
     { Public declarations }
     // property used to read MainForm client coordinates 
    property MainWindowClientCoordinates: TRect
        read FMainWindowClientCoordinates write SetMainWindowClientCoordinates;
   end;

 var
   MDIForm: TMDIForm; // Main form, property "formStyle" has to be fsMdiForm 

implementation

 {$R *.DFM}

 uses
   Child; // Defines TMDIchild class, property "formStyle" has to be fsMdiChild 

procedure TMDIForm.SetMainWindowClientCoordinates(const Value: TRect);
 begin
   FMainWindowClientCoordinates := Value;
 end;

 procedure TMDIForm.SetMainWindowCoordinates(const Value: TRect);
 begin
   FMainWindowCoordinates := Value;
 end;

 procedure TMDIForm.FormShow(Sender: TObject);
 begin
   // Reads MDIForm client coordinates 
  Windows.GetClientRect(ClientHandle, fMainWindowClientCoordinates);
 end;

 procedure TMDIForm.NewChild(Sender: TObject);
 var
   LocalMDIChildForm: TMDIChildForm;
 begin
   // You can execute this procedure each time you 
  // create a new child, for example you can call this 
  // procedure from a button 
  LocalMDIChildForm := TMDIChildForm.Create(Self);
   with LocalMDIChildForm do
   begin
     Caption := 'Child Form: ' + IntToStr(MDIChildCount);
     Top     := MainWindowClientCoordinates.Top;
     Left    := MainWindowClientCoordinates.Left;
     Width   := MainWindowClientCoordinates.Right;
     Height  := MainWindowClientCoordinates.Bottom;
     Show;
   end; // with ... 
end;

 end.



Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования