Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сообщения windows [D7, XP]


Lera ©   (2006-09-19 13:36:00) 

Подскажите пожалуйста, какое сообщение windows соответствует нажатию на иконку (на панели задач) запущенного, но свернутого приложения? По этому событию хотелось бы передать информацию другому приложению. Заранее спасибо.


DVM   (2006-09-19 15:13:00) [1]


> насколько я понимаю, при нажатии левой кнопкой мыши приложение
> получит сообщение WM_SYSCOMMAND с флагом SC_RESTORE

Это уже потом. А первым придет WM_WINDOWPOSCHANGING.


Virgo_Style   (2006-09-19 15:11:00) [2]

Leonid Troyanovsky ©   (19.09.06 15:02) [12]
Вот как, не знал. Спасибо за информацию %-)

Elen ©   (19.09.06 15:07) [13]
Sorry за непонятки

И вам того же %-)


umbra   (2006-09-19 15:09:00) [3]


> какое сообщение windows соответствует нажатию на иконку
> (на панели задач) запущенного, но свернутого приложения

насколько я понимаю, при нажатии левой кнопкой мыши приложение получит сообщение WM_SYSCOMMANDс флагом SC_RESTORE


Elen   (2006-09-19 15:07:00) [4]


> Virgo_Style

АЙ... Яснышко... Привычка старая :-). Sorry за непонятки...


Leonid Troyanovsky   (2006-09-19 15:02:00) [5]


> Virgo_Style ©   (19.09.06 14:59) [11]

> )))) все. понял. У Вас в интерфейсной части и в реализации
> FormRest по-разному объявлен.


В реализации допускается не описывать.

--
Regards, LVT.


Virgo_Style   (2006-09-19 14:59:00) [6]

Elen ©   (19.09.06 14:41) [9]
)))) все. понял. У Вас в интерфейсной части и в реализации FormRest по-разному объявлен.

Вы смотрите вверх - там правильно. А я вниз - там неправильно. =)))


DVM   (2006-09-19 14:50:00) [7]


> Подскажите пожалуйста, какое сообщение windows соответствует
> нажатию на иконку (на панели задач) запущенного, но свернутого
> приложения? По этому событию хотелось бы передать информацию
> другому приложению. Заранее спасибо.

Если ответить на вопрос точно в том виде, в котором он задан, то сообщений масса и придут они в первую очередь не приложению, а окну панели задач и соответственно тулбару или табконтролу, лежащему на панели задач.
Да и самому окну приложения при разворачивании тоже приходит далеко не одно сообщение.

Лучше бы автор вопроса написал, что он в результате хочет получить.


Elen   (2006-09-19 14:41:00) [8]


> Virgo_Style

type TNotifyEvent = procedure             (Sender: TObject) ofobject;
                           procedure FormRest(sender: Tobject);
Не пойму Вас :-\...


Virgo_Style   (2006-09-19 14:35:00) [9]

OnRestore {TNotifyEvent}:= formrest {не TNotifyEvent};


Elen   (2006-09-19 14:15:00) [10]


> Lera

Глупости!!! Срабатывает когда разворачивает. Если хочеш получить реакцию когда переключаеш между окнами - опиши FormActivate


Lera   (2006-09-19 14:08:00) [11]

Срабатывает лишь когда...сварачиваешь приложение. Когда перещелкиваешь иконками между разными приложениями и вновь щелкаешь на свое ничего не происходит


Elen   (2006-09-19 13:58:00) [12]


> Lera

Что непонятно


> Virgo_Style

А точнее - где неточность?


Virgo_Style   (2006-09-19 13:56:00) [13]

Elen ©   (19.09.06 13:47) [1]

property OnRestore: TNotifyEvent;

type TNotifyEvent = procedure (Sender: TObject) of object;

посему FormRest(Sender: TObject); .

Для простоты, кстати, можно использовать ApplicationEvents на вкладке Additional.


Lera   (2006-09-19 13:52:00) [14]

правда....не очень понятно


Lera   (2006-09-19 13:50:00) [15]

спасибо.....попробую


Elen   (2006-09-19 13:47:00) [16]

Например так :
unit Unit1;

interface

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

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
   procedure FormRest(sender:Tobject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

//********* PROCEDURE**********
procedure tform1.FormRest;
//const
//Var
begin
Application.MessageBox('rest','');
{Сдесь передавай свое сообщение кому хочеш}

end;
//********* END PROCEDURE*******

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnRestore:=formrest;
end;

end.


Наверх

Титульная страница Поиск, карта сайта Написать письмо