Каждую дочернюю форму заставить полностью заполнять область главнойDelphi , Программа и Интерфейс , MDI приложенияКаждую дочернюю форму заставить полностью заполнять область главной
Оформил: DeeCo 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. В статье описывается пример создания интерфейса Multiple Document Interface (MDI) в Delphi, где каждая дочерняя форма заполняет полный клиентский регион главной формы. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: MDI приложения ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |