Вопрос прост. Как обнаружить изменение разрешения экрана в Delphi?
Как определить изменение разрешения экрана в Delphi?
Ответ 1
Вам нужно только обнаружить сообщение WM_DISPLAYCHANGE
.
Например,
TForm1 = class(TForm)
private
protected
procedure WMDisplayChange(var Message: TWMDisplayChange);
message WM_DISPLAYCHANGE;
{ Private declarations }
public
{ Public declarations }
end;
...
procedure TForm1.WMDisplayChange(var Message: TWMDisplayChange);
begin
ShowMessageFmt('The screen resolution has changed to %d×%d×%d.',
[Message.Width, Message.Height, Message.BitsPerPixel]);
end;