Posição do Form na Tela
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...
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
Curtidas 0
Respostas
Rômulo Barros
03/06/2003
Claro que tem. Batas vc definir a propriedade WindowState do formulário principal para WSMAXIMIZED. HUHAUAHAUHAUAHAUAAHU
GOSTEI 0
Sandra
03/06/2003
[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:
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:
GOSTEI 0
Toshio Bruno
03/06/2003
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+
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+
GOSTEI 0