cobrir 100¬ a tela do windows
olá pessoal eu esqueci o procedimento de criar um form que ocupe totalmente a tela até mesmo a barra do windows...
como é usado em telas de frende de caixa onde o usuário não tem acesso algum ao windows
como é usado em telas de frende de caixa onde o usuário não tem acesso algum ao windows
Crcam
Curtidas 0
Respostas
Rjun
24/04/2006
Defina a propriedade WINDOWSTATE para wsMaximized e a propriedade BORDERSTYLE para bsNone.
GOSTEI 0
Crcam
24/04/2006
ehehehehe eu já fiz isso essa parte é basico mas o que eu quero sabe é a barra de ferramentas ( relogio icones iniciar etc....)
GOSTEI 0
Martins
24/04/2006
ehehehehe eu já fiz isso essa parte é basico mas o que eu quero sabe é a barra de ferramentas ( relogio icones iniciar etc....)
Campos, vc vai conseguir o q deseja usando esse código.
// Esconde a barra de tarefas do Windows // Coloque esse código no OnShow do Form. ShowWindow(FindWindow(´Shell_TrayWnd´,nil), SW_HIDE) ; // Retorna a barra de tarefas do Windows // Coloque esse código no OnClose do Form. ShowWindow(FindWindow(´Shell_TrayWnd´,nil), SW_Normal) ;
Espero q seja isso q vc está procurando, retorne aqui o resultado.
Boa sorte.
GOSTEI 0
Martins
24/04/2006
Defina a propriedade WINDOWSTATE para wsMaximized e a propriedade BORDERSTYLE para bsNone.
Essa dica é perfeitamente funcional.
GOSTEI 0
Crcam
24/04/2006
é o caminho é quase esse mas note que mesmo escondendo a barra o local dela fica lá ou seja o form não ocupa 100¬ a tela
p/ vc ter uma ideia legal do que tenho de fazer pegue como exemplo o sistema do supermercado extra a tela do programa ocupa 100¬ a tela
p/ vc ter uma ideia legal do que tenho de fazer pegue como exemplo o sistema do supermercado extra a tela do programa ocupa 100¬ a tela
GOSTEI 0
Martins
24/04/2006
é o caminho é quase esse mas note que mesmo escondendo a barra o local dela fica lá ou seja o form não ocupa 100¬ a tela
p/ vc ter uma ideia legal do que tenho de fazer pegue como exemplo o sistema do supermercado extra a tela do programa ocupa 100¬ a tela
Campos faz um teste com a dica do RJun em um form Novo sem usar o
[b:e6d6ad9163]AnimateWindow(form1.Handle,2000,AW_CENTER);[/b:e6d6ad9163]
e veja o resultado.
GOSTEI 0
Ipc$
24/04/2006
Se não der certo, tente com SetWindowPos
WindowState := wsNormal; SetWindowPos(Handle, HWND_TopMost, 0, 0, Screen.Width, Screen.Height, SWP_ShowWindow);
GOSTEI 0
Crcam
24/04/2006
pessoal infelizmente ele não sobrepõe a barra!!!!!
GOSTEI 0
Kroki
24/04/2006
Pelo oque vc disse sua área de trabalho foi redimensionada e isso não é muito comum.
Tente isso no OnCreate;
...
var
R:TRect;
begin
R.Left :=0;
R.Top :=0;
R.Right :=Screen.Width;
R.Bottom :=Screen.Height;
SystemParametersinfo(SPI_SETWORKAREA,0,@R,SPIF_SENDCHANGE );
...
Alguma coisa ta setando sua área de trabalho...
Tente isso no OnCreate;
...
var
R:TRect;
begin
R.Left :=0;
R.Top :=0;
R.Right :=Screen.Width;
R.Bottom :=Screen.Height;
SystemParametersinfo(SPI_SETWORKAREA,0,@R,SPIF_SENDCHANGE );
...
Alguma coisa ta setando sua área de trabalho...
GOSTEI 0
Paullsoftware
24/04/2006
as dicas do amigos martins, ipc$, Rjun todas funcionaram perfeitamente comigo, mais...
no OnCreate tente algo assim:
levando em conta que...
borderStyle = bsNone;
Position = poScreenCenter;
acho que assim não tem como não funcionar :wink:
no OnCreate tente algo assim:
levando em conta que...
borderStyle = bsNone;
Position = poScreenCenter;
´ Width := Screen.Height; Height := Screen.Width; Top := 0; Left := 0; SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE);
acho que assim não tem como não funcionar :wink:
GOSTEI 0
Crcam
24/04/2006
não sei se por ser windows 2000 pro mas tive de fazer uns ajustes diretamente no codigo...
onde resolveu o problema foi nessa linha ´ Align := alLeft; ´
mas enfim deu certo! agradeço a atenção de todos que colaboraram
onde resolveu o problema foi nessa linha ´ Align := alLeft; ´
´ // tratamento sobrepor 100¬ tela procedure TForm1.FormCreate(Sender: TObject); begin Width := Screen.Height; Height := Screen.Width; Top := 0; Left := 0; Align := alLeft; WindowState := wsMaximized; Position := poDesktopCenter; SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE); end; // fim tratamento sobrepor 100¬ tela
mas enfim deu certo! agradeço a atenção de todos que colaboraram
GOSTEI 0
Crcam
24/04/2006
não sei se por ser windows 2000 pro mas tive de fazer uns ajustes diretamente no codigo...
onde resolveu o problema foi nessa linha ´ Align := alLeft; ´
mas enfim deu certo! agradeço a atenção de todos que colaboraram
onde resolveu o problema foi nessa linha ´ Align := alLeft; ´
´ // tratamento sobrepor 100¬ tela procedure TForm1.FormCreate(Sender: TObject); begin Width := Screen.Height; Height := Screen.Width; Top := 0; Left := 0; Align := alLeft; WindowState := wsMaximized; Position := poDesktopCenter; SetWindowPos(Handle,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE); end; // fim tratamento sobrepor 100¬ tela
mas enfim deu certo! agradeço a atenção de todos que colaboraram
GOSTEI 0