Disabling Full Window Drag

Question:

The redraw time for my canvas takes too long if the user drags the form outside the desktop window. How can I determine if the user has the "Full Window Drag" feature enabled in Windows, so I can take steps to temporarily disable my redraws?

Answer:

The Following example demonstrates checking if full windows drag is enabled.

Example:

procedure TForm1.Button1Click(Sender: TObject);

var

  b : bool;

begin

  SystemParametersInfo(SPI_GETDRAGFULLWINDOWS, 0, @b, 0);

  if not b then

  ShowMessage('Full Window Drag is not enabled') else

  ShowMessage('Full Window Drag is enabled');

end;