Delphi: Обнаружьте запускаются и конец перемещения окна

Javascript

Вы можете смоделировать на JavaScript Demo: RegExp Constructor .

var s = `5' 10" 1/2`;
var s1 = `6' 3" 1/4`;
var s2 = `4' 8"`;
var s3 = `5'`;
var s4 = `10"`;

var regex = /\d[\s\'\"\d\/]+/;

var result = s.match(regex);
var result1 = s1.match(regex);
var result2 = s2.match(regex);
var result3 = s3.match(regex);
var result4 = s4.match(regex);

console.log(result);
console.log(result1);
console.log(result2);
console.log(result3);
console.log(result4);

8
задан Dylan Corriveau 22 June 2015 в 14:44
поделиться

2 ответа

Я бы пошел с комментарием mghie : используйте таймер для анимации и активируйте / деактивируйте его с помощью обработчиков сообщений.

В вашем случае вы можете захотеть Чтобы добавить следующие обработчики сообщений:

//fired when starting/ending a "move" or "size" window
procedure WMEnterSizeMove(var Message: TMessage) ; message WM_ENTERSIZEMOVE;
procedure WMExitSizeMove(var Message: TMessage) ; message WM_EXITSIZEMOVE;


  procedure TForm.WMEnterSizeMove(var msg: TMessage);
  begin
    AnimationTimer.Enabled := false;
    inherited;
  end;

  procedure TForm.WMExitSizeMove(var msg: TMessage);
  begin
    AnimationTimer.Enabled := true;
    inherited;
  end;
11
ответ дан 5 December 2019 в 11:26
поделиться

Я не пробовал этого, но я бы сказал, что вы, вероятно, могли бы использовать WM_WINDOWPOSCHANGING, чтобы сказать, когда окно перемещается. http://msdn.microsoft.com/en-us/library/ms632653 (VS.85) .aspx

Код Delphi будет:

TSomeForm = class(TForm)
protected
  ...
  procedure WindowPosChanging(var Msg : TMessage); message WM_WINDOWPOSCHANGING;
  ...
end;
4
ответ дан 5 December 2019 в 11:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: