MDI приложения
Обрабатывайте событие OnClose для формы и выставляйте в нем параметр Action в caFree. Дело в том, что его значение по умолчанию
для MDI Child форм caMinimize. Кстати, если сделать Action := caNone, то форму нельзя будет закрыть
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
Code: |
constructor TMainForm.Create(AOwner: TComponent); begin Inherited Create(AOwner); SetWindowLong(ClientHandle, GWL_EXSTYLE, GetWindowLong(ClientHandle, GWL_EXSTYLE) or WS_EX_CLIENTEDGE); SetWindowPos(ClientHandle, 0, 0, 0, 0, 0, swp_DrawFrame or swp_NoMove or swp_NoSize or swp_NoZOrder); end; |
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
Если вам просто нужно отобразить всплывающие подсказки от элементов управления вашей дочерней формы, то сделайте это в вашей главной форме.
Объявите следующую процедуру в классе вашей главной формы:
Code: |
private {============================================================} { Процедура, вызываемая приложением всякий раз, когда } { приложение хотело бы показать всплывающую подсказку. } { Добавляет хинт на панель статуса. } {============================================================} procedure ShowHint(Sender : TObject); |
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
Code: |
procedure TFormX.FormCreate(Sender: TObject); Var r: TRect; client: HWND; Begin client := application.mainform.clienthandle; Windows.GetClientRect( client, r ); MapWindowPoints( client, HWND_DESKTOP, r, 2 ); BoundsRect := r; End; |
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
перевод одноимённой статьи с delphi.about.com)
Что такое MDI?
MDI расшифровывается как multiple document interface (многодокументный интерфейс). В приложениях с MDI, в основном (родительском) окне можно окрыть более одного дочернего окна. Данная возможность обычно используется в электронных таблицах или текстовых редакторах.
Каждое MDI приложение имеет три основные составляющие:
Одну (и только одну) родительскую форму MDI, Одну и более (обычно больше) дочерних форм MDI, и основное меню MDI.
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
Привожу код, который может оказаться полезным. Он позволяет в обычной или MDI-форме создать графический tile-фон или градиентную заливку.
(Tile - "секция, плитка" - непрерывное заполнение определенной области немасштабируемым изображением слева-направо сверху вниз - В.О.)
- Подробности
- Родительская категория: TForm
- Категория: MDI приложения
Страница 2 из 2