Quick Tips : Conhecendo a classe TScreen
Veja nesta Quick alguns recursos encontrados na Classe TScreen
Olá galera, nesta Quick Tips, irei falar um pouco mais sobre uma classe não muito utilizada, mas de muita ajuda para os desenvolvedores, a TScreen, localizada na unit Forms.
Objetivo é representar o estado da tela em que um aplicativo é executado. Representa as propriedades que mantém o controle de quais Forms e Data Modules foram instanciados pela aplicação, armazena o Form ativo e o Controle ativo dentro do mesmo. Armazena também informações de resolução de tela, cursores, fontes disponíveis no Sistema Operacional, controle dos monitores onde deve aparecer uma determinada imagem além de sua resolução
Existe uma variável global chamada Screen, do tipo Froms.TScreen, que já esta instancia através de um GUI. Por isso podemos utilizar ela sem termos que instanciar a mesma.
Vamos agora utilizar alguns recursos disponíveis nesta poderosa e interessante classe, mostrarei em seqüência as finalidades de cada comando e a forma de utilizar. Observe que estou fazendo uso de um ListBox, para adicionar os valores obtidos, porém nada impede de você usar um Edit por exemplo, e também estou fazendo uso de For, ou seja precisamos declara uma variável do tipo Integer.
Obtendo Width da resolução
ListBox1.Items.Add('Width : ' +IntToStr(Screen.Width));
Obtendo Height da resolução
ListBox1.Items.Add('Height : ' +IntToStr(Screen.Height));
Listar o nome dos forms instanciados de sua aplicação
for I := 0 to -1 + Screen.FormCount do
ListBox1.Items.Add(Screen.Forms[I].Name) ;
Listar o nome dos DataModules instanciados de sua aplicação
for I := 0 to -1 + Screen.DataModuleCount do
ListBox1.Items.Add(Screen.DataModules[I].Name) ;
Quantidade de forms criados
ShowMessage('Numero de Formulário : ' + IntToStr(
Screen.FormCount));
Listar todas as fontes instaladas no Windows
ListBox1.Items.AddStrings(Screen.Fonts);
Centralizando o Formulário
Form1.Left := (Screen.Width - Form1.Width) div 2;
Form1.Top := (Screen.Height - Form1.Height) div 2;
Definindo um curso em tempo de execução
Screen.Cursor := crDrag;
Mudar a Fonte do Hint de sua aplicação
Screen.HintFont.Name := 'Book Antiqua';
Uma função extra:
Exibindo todos os componentes e units de cada componente no Form
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
I: Integer;
begin
for I := 0 to ComponentCount - 1 do
begin
ListBox2.Items.Add(Components[I].Name + ' = '+
Components[I].UnitName );
end;
end;
Fica ai então esta dica para obtermos informações da instancia do seu aplicativo.
Fico por aqui ate à próxima Quick Tips.
Um abraço
Wesley Y
wyamazack@rwsolution.com.br
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo