Текущий архив: 2003.08.07;
Скачать: 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 вся ветка
Текущий архив: 2003.08.07;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.009 c