Fórum Maximar Form no monitor em uso #618027
02/05/2022
0
Boa noite, eu deixei meu form com o border none e criei minha propria barra, no botão de maximizar estou utlizando o seguinte código
Que utiliza a seguinte function
O problema é o seguinte, se o usuario tem mais de um monitor em uso quando aperta para maximizar o form, ele sempre maximiza o form e move ele para o monitor nº 1. Como eu faço pra ele maximizar e permanecer no monitor que está em uso?
if (frmA7ComparativoVendas.WindowState = wsMaximized) then begin
frmA7ComparativoVendas.WindowState := wsNormal;
end else begin
frmA7ComparativoVendas.WindowState := wsMaximized;
frmA7ComparativoVendas.SetBounds(0,0,screen.Width,screen.Height-getHeightOfTaskBar);
end;
Que utiliza a seguinte function
function getHeightOfTaskBar : integer;
var hTaskBar:HWND;
rect : TRect;
begin
hTaskbar := FindWindow('Shell_TrayWnd', Nil );
if hTaskBar<>0 then
GetWindowRect(hTaskBar, rect);
Result:=rect.bottom - rect.top;
end;O problema é o seguinte, se o usuario tem mais de um monitor em uso quando aperta para maximizar o form, ele sempre maximiza o form e move ele para o monitor nº 1. Como eu faço pra ele maximizar e permanecer no monitor que está em uso?
Paulo
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)