Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 28.02.2013, 21:38
Аватар для kaktusad
kaktusad kaktusad вне форума
Прохожий
 
Регистрация: 16.11.2012
Сообщения: 18
Репутация: 10
Восклицание Формы

Можете, пожалуйста, внятно и четко объяснить, как сделать, чтобы при сворачивании любой формы программы, она сворачивалась в панель задач, а не отдельным окном над ней.
У меня в программе 8 форм, пробовал вызывать их не методом Show, а ShowModal - все равно нормальный вид при сворачивании только первой главной формы...
Ответить с цитированием
  #2  
Старый 01.03.2013, 01:02
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от kaktusad
...как сделать, чтобы при сворачивании любой формы программы, она сворачивалась в панель задач, а не отдельным окном над ней...
Надо смотреть, что происходит при сворачивании формы. Если она главная, то ей идёт сообщение Application.Minimize, а если дочерняя, то лишь Form2.Minimize. Поэтому форма не прячется, а остаётся на экране в минимизированном виде. Вариант решения: при минимизации управлять её видимостью, а для этого прописываем в юните скрываемой формы такую процедуру
Код:
...
type
  TForm2 = class(TForm)
    
procedure WMSysCommand(var message: TWMSysCommand);
    message WM_SysCommand;
...
и собсно её тельце после implementation
Код:
procedure TForm2.WMSysCommand(var message: TWMSysCommand);
begin
if message.CmdType = SC_MINIMIZE then Form2.Visible:= false
else Inherited;
end;
Теперь при получении приказа свернуться, форма вместо этого будет скрываться.
Ответить с цитированием
  #3  
Старый 01.03.2013, 08:20
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

для всех форм кроме главной добавить код:
Код:
unit Unit2;

interface

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

type
  TForm2 = class(TForm)
  private
    { Private declarations }
    procedure WMSYSCOMMAND(var Msg: TMessage); message WM_SYSCOMMAND; 
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

{ TForm2 }

procedure TForm2.WMSYSCOMMAND(var Msg: TMessage);
begin
  if Msg.WParam=SC_MINIMIZE then Application.Minimize else inherited;
end;

end.
 
Вложения
Тип файла: rar WM_SYSCOMMAND.rar (2.0 Кбайт, 1 просмотров)
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #4  
Старый 01.03.2013, 13:33
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Здесь вся соль в подаче вопроса - ТС нужно чтоб при сворачивании дочерней формы приложения она не минимизировалась (сворачивалась до одного заголовка с кнопками), а уходила в трей (как будто вся аппликация, но по частям), замена сворачивания скрытием не плохой вариант, как мне кажется. Хотя, чем только Борланд не шутит, может я вопрос как обычно, не допонял
Ответить с цитированием
  #5  
Старый 01.03.2013, 14:21
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

http://zalil.ru/34306037
так?
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #6  
Старый 01.03.2013, 16:05
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Оффтоп:
Цитата:
Сообщение от NumLock
...так?
Придёт хозяин топки, объяснит
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:14.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter