Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
Simplicidade=Funcionalidade
SMART, FORMAT, MINIMIZER, CRESOFT, TBNAREA...
Pequenos componentes que fazem a diferença
Preparamos uma surpresa para a seção componente do mês desta edição: Não teremos apenas um, mas vários componentes. Isso mesmo - uma coleção de objetos que consideramos super interessantes para a vida do desenvolvedor - ou, pelo menos, para satisfazer a curiosidade dos incansáveis exploradores do Delphi.
Os objetos são, em sua maioria, muito simples. São utilitários que implementam alguma funcionalidade não comum, ou que exibem alguma função interessante. Todos são de código aberto e freeware, estando disponíveis para download em nossa homepage, no endereço www.clubedelphi.com.br/edicao9/compomes.zip
A descrição dos objetos será bem resumida, visto que o uso dos mesmos é bem simples. Maiores informações podem ser obtidas nos próprios arquivos de ajuda dos componentes, que também estão disponíveis para download.
Componente SMART
Dois utilitários, TDiskInfo e TdeviceCap. O primeiro retorna várias informações a respeito de um respectivo drive, como espaço livre em disco, o tipo do drive, o tipo de sistema de arquivos, o número serial do disco, o tamanho total, o nome do volume, entre muitos outros.
O segundo, DeviceCap, retorna informações sobre um dispositivo de vídeo para um form específico. Entre suas propriedades, podemos encontrar a relação pixels por polegada, a resolução atualmente selecionada, o tamanho físico da área de vídeo, em milímetros, entre outras.
Componente FORMAT
Utilizado para formatar unidades flexíveis; é possível, através da propriedade FormatType, definir como será a formatação: rápida, completa, ou somente cópia dos arquivos de sistema;
Nota: Este componente executa a formatação através da janela de formatação do Windows.
Palheta UTILMIND
Três componentes com funcionalidade isolada. Vejamos:
XjustOne: Verifica se a aplicação já está sendo executada. Caso seja verdadeiro, o componente pode travar a tentativa de executar a mesma aplicação por mais de uma vez. O objeto fornece ainda o evento OnAlreadyExist, que permite ao desenvolvedor programar qualquer rotina para ser executada quando o aplicativo carregado já possuir uma cópia em memória.
AutoRunner: Executará a aplicação sempre que o Windows for iniciado.
ResMeter: Retorna informações a respeito dos recursos livres do sistema. É possível obter informações a respeito da GDI, dos recursos de sistema e de usuário.
Componente MINIMIZER
Componente simples para colocar o ícone do aplicativo na Barra de Notificação do Windows (na parte do relógio) quando este for minimizado. Possui dois eventos para capturar a ação do mouse:
LButtonDdblclick: Este evento ocorrerá quando for dado um duplo click sobre o ícone com o botão esquerdo.
RButtonDown: Este evento ocorrerá quando for dado um click com o botão direito do mouse em cima do ícone.
Componente CRESOFT
Objeto interessantíssimo - permite programar a exclusão do próprio executável. Ao executar o método DeleteForm, o aplicativo grava uma string no registro, indicando que no próximo início do windows o programa em questão será deletado do disco. Muito bom para criar rotinas de proteção ou sistemas de demo;
Componente TBNAREA
É um componente que serve para colocar o ícone de uma aplicação na Barra de Notificação do Windows, quando a mesma for iniciada. Diferente do componente TMinimizer que só é ativada quando a aplicação for minimizada.
Ferramenta FAVOURITES
SysData: É um componente que serve para obter informações sobre o uso da CPU, mémoria virtual, números de threads em execução, entre outras.
Coleção YUPACK
Um pequeno conjunto de componentes para incrementar ainda mais o visual da aplicação. Os destaques são o label, com uma quantidade bastante razoável de efeitos, e o botão gradiente, que foi muito bem implementado.
TyuSoftButton
Primeiro botão da coleção. Se destaca apenas por permitir a configuração de imagens para todos os estados do botão, como pressionado, não pressionado, habilitado, desabilitado, etc...
TyuSoftLabel
Label da coleção. Muda de cor quando o mouse passa sobre o objeto, possui vários tipos de bevels, entre outros recursos.
YuSoftButton
Permite selecionar um botão da classe TyuSoft. Quando está associado a um TyusoftButton, o botão passa a acompanhar o estado do label.
TyuSoftWallPaper
Cria o efeito de "lado a lado"do windows. Pode ser útil para criar backgrounds no formulário.
TyuSoftGradientButton
Outro botão da palheta. Seu principal recurso é a capacidade de exibir degradés em sua face. Outro efeito bastante interessante é a possibilidade de substituir a barra de título do formulário. Para isto, basta definir a propriedade WindowCaption para TRUE.
Um formulário, com este objeto, se prende às bordas da tela. Ou seja, quando o formulário é arrastado próximo aos limites da tela, ele cria um efeito "magnético".
Coleção Cool!
Compostos por três objetos, sendo o destaque para o componente TCoolForm. Criam transparências, formulários com formas não-retangulares, entre outros efeitos.
TCoolButton
Simples descendente do objeto TSpeedButton sem muita inovação. Cria transparências e permite a definição de glyphs para quatro possíveis estados do botão: normal, pressionado, mouseover e desabilitado. A propriedade Glyph representa apenas um arquivo de imagem único, que deverá conter todos os estados, lado a lado.
TTransparentMemo
Objeto TMemo com transparência.
TcoolForm
O objeto mais interessante da coleção. Permite ao desenvolvedor criar formulários com formas não-retangulares.
O uso do objeto é muito simples. Basta definir a figura que servirá de "shape" para o formulário, através da propriedade picture. Após, deve-se indicar a máscara de transparência, através da propriedade mask. Ao clicar sobre esta propriedade, uma janela de seleção de cor será exibida:
Destaque
Clique sobre a cor que será substituída por transparência, e em seguida clique no botão Iniciar. O processo de criação pode ser demorado, dependendo do tamanho da figura.
E OK! Basta rodar a aplicação e ter um interessante formulário flutuando sobre as janelas do windows.