Скрывать свернутые дочерние формы MDI приложенияDelphi , Программа и Интерфейс , MDI приложенияСкрывать свернутые дочерние формы MDI приложения
Оформил: DeeCo // Write this code in your MDI Child Window unit. // Schreibe diesen Code in die Unit des MDI Child Fensters: type TfrmMyMDIForm = class(TForm) public procedure WMSize(var Msg: TWMSIZE); message WM_SIZE end; implementation procedure TfrmMyMDIForm.WMSize(var Msg: TWMSize); begin if Msg.SizeType = SIZE_MINIMIZED then ShowWindow(Handle, SW_HIDE); end; Here's the translation of the text into Russian: Код на Delphi - полезный снippet! Цель - скрыть (или "свернуть") дочернюю форму MDI, когда она минимальна. Это можно достичь, переопределив сообщение WM_SIZE в дочерней форме MDI. Вот разбивка кода: 1. Определен класс TfrmMyMDIForm, который наследуется от TForm. Он объявляет единственный процедуру WMSize, которая будет обрабатывать сообщение WM_SIZE. 2. В разделе реализации определена процедура WMSize. Она проверяет, равна ли свойство SizeType параметра Msg (записи TWMSize) значению SIZE_MINIMIZED. 3. Если это так, код вызывает функцию ShowWindow с двумя аргументами: Handle (handle формы) и SW_HIDE (константа, скрывающая окно). Это будет скрыть дочернюю форму MDI, когда она минимальна. Чтобы использовать этот код в вашем проекте Delphi: 1. Создайте новую дочернюю форму MDI (например, TfrmMyMDIForm), наследуясь от TForm. 2. Скопируйте и вставьте код в раздел реализации формы. 3. Compile and run your application. Когда вы минимальизируете экземпляр этой формы, она будет скрыта от зрения. Если вам нужно снова покажать ее (т.е. восстановить нормальный размер и видимость), просто максимизируйте или восстановите форму с помощью соответствующих кнопок в заголовке окна. Альтернативное решение: Если вы предпочитаете не использовать сообщение WM_SIZE, можно достичь аналогичного результата, обрабатывая событие OnMinimize дочерней формы MDI. Этот подход более прост и не требует переопределения системного сообщения. Вот пример:
В этом случае, когда форма минимальна, метод Hide будет вызван, эффективно скрыв форму от зрения. В статье описывается способ программного скрывания свернутых дочерних форм в приложении с многооконным интерфейсом (MDI) на языке Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: MDI приложения ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |