Вниз
Скачать: CL | DM;

Эмуляция клика на заголовке окна.   Найти похожие ветки 

 
VISA   (2003-07-24 13:14) [0]

Здравствуйте!!!
Подскажите пожалуйста (желательно маленьким примерчиком), как программно эмулировать клик мыши на заголовке окна.


 
h@1f-e1f ©   (2003-07-24 13:20) [1]

А зачем, если не секрет


 
VISA   (2003-07-24 13:30) [2]

Мне необходимо это для того, чтобы при вызове окна из трэя оно стало активным. SetForeGroundWindow работает не так, как хотелось бы...


 
SergeySEM ©   (2003-07-24 13:32) [3]

Нужно объявить процедуру в частных объявлениям (после ключевого слова Private):
private
{ Private declarations }
procedure WMNCHitTest (var M:TWMNCHitTest);message wm_NCHitTest;
В области implementation описываем процедуру так:
implementation
{$R *.DFM}
procedure TForm1.WMNCHitTest (var M:TWMNCHitTest);
begin
inherited;
if M.Result=htClient then M.Result:=htCaption;
end;
Как это сделано?
Мы выдаём клиентскую область окна за заголовочную область.


 
Pauk   (2003-07-24 13:34) [4]

procedure WMSYSCOMMAND(var Message: TMessage); message WM_SYSCOMMAND;

PROCEDURE WMSYSCOMMAND(var Message: TMessage);
begin
if Message.WParam=61458 then ShowMessage("Click on FormCaption")
else inherited;
end;


 
Pauk   (2003-07-24 13:35) [5]

ups! не обращайте внимания
это событие - на клик окна, а не на его програмную эмуляцию


 
SergeySEM ©   (2003-07-24 13:36) [6]

Хочу показать еще один способ перемещения окна за его тело
Обрабатываем OnMouseDown:
ReleaseCapture;
Perform(WM_SYSCOMMAND, $F012, 0);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
14-20734
McSimm
2003-07-18 19:52
2003.08.07
Информация о конкурсе статей.


14-20730
VD602
2003-07-18 21:43
2003.08.07
Предложение авторам сайта.


1-20521
GreySerg
2003-07-25 18:41
2003.08.07
Создание коллекции объектов


14-20661
nikkie
2003-06-29 02:44
2003.08.07
Еще один клиент для форума


9-20370
Marser
2003-02-08 23:04
2003.08.07
Алгоритм




   Наверх