Fórum Posição do Form na Tela #164374

03/06/2003

0

Olá moçada...

Preciso que o form uma vez que ele é aberto, não seja possivel ao usuário
nem alterar o seu tamanho e nem alterar a sua posição na tela,

É possível ???

Desde já obrigado...


Paulo Lima

Paulo Lima

Responder

Posts

03/06/2003

Rômulo Barros

Claro que tem. Batas vc definir a propriedade WindowState do formulário principal para WSMAXIMIZED. HUHAUAHAUHAUAHAUAAHU


Responder

Gostei + 0

04/06/2003

Sandra

[quote:c92b2ff719=´Paulo Jose de Lima´]Olá moçada...

Preciso que o form uma vez que ele é aberto, não seja possivel ao usuário
nem alterar o seu tamanho e nem alterar a sua posição na tela,

É possível ???

Desde já obrigado...[/quote:c92b2ff719]


Olá, Paulo!!


Qual a versão do Delphi que está utilizando? No object inspector, procure pelas propriedades:

BorderStyle = [b:c92b2ff719]bsSingle[/b:c92b2ff719] (não redimensionar)
Align = [b:c92b2ff719]alCustom[/b:c92b2ff719] (para não mover)

Verifique também a propriedade Position e procure por [b:c92b2ff719]poScreenCenter[/b:c92b2ff719].

Eu utilizo o Delphi 6.


:wink:


Responder

Gostei + 0

04/06/2003

Toshio Bruno

Não redimensionar:

type
TForm1 = class(TForm)
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
procedure WMGetMinMaxInfo(var Msg: TWMGetMinMaxInfo); message WM_GETMINMAXINFO;
procedure WMInitMenuPopup(var Msg: TWMInitMenuPopup); message WM_INITMENUPOPUP;
procedure WMNCHitTest(var Msg: TWMNCHitTest); message WM_NCHitTest;

public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMGetMinMaxInfo(var Msg: TWMGetMinMaxInfo);
begin
inherited;
with Msg.MinMaxInfo^ do
begin
ptMinTrackSize.x:= form1.width;
ptMaxTrackSize.x:= form1.width;
ptMinTrackSize.y:= form1.height;
ptMaxTrackSize.y:= form1.height;
end;
end;
procedure TForm1.WMInitMenuPopup(var Msg: TWMInitMenuPopup);
begin
inherited;
if Msg.SystemMenu then
EnableMenuItem(Msg.MenuPopup, SC_SIZE, MF_BYCOMMAND or MF_GRAYED)
end;
procedure TForm1.WMNCHitTest(var Msg: TWMNCHitTest);
begin
inherited;
with Msg do
if Result in [HTLEFT, HTRIGHT, HTBOTTOM, HTBOTTOMRIGHT,HTBOTTOMLEFT, HTTOP,HTTOPRIGHT, HTTOPLEFT] then
Result:= HTNOWHERE
end;

end.

Para ele permanecer na mesma posição coloque um Timer, coloque o interval:=1;
No OnTimer;

var
r : TRect;
osv : TOSVersionInfo;
begin
osv.EdwOSVersionInfoSize := sizeof(osv);
GetVersionEx(osv);
if osv.dwPlatformId = VER_PLATFORM_WIN32_WINDOWS then
begin
SystemParametersInfo(SPI_GETWORKAREA, 0, @r, 0);
Left := ((r.right - r.left) - Width) div 2;
Top := ((r.bottom - r.top) - Height) div 2;
end
else
begin
Left := (GetSystemMetrics(SM_CXSCREEN) - Width) div 2;
Top := (GetSystemMetrics(SM_CYSCREEN) - Height) div 2;
end;
end;

isso vai centralizar o form.

Espero ter ajudado.
T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar