Todas as dicas e rotinas desta seção foram obtidas nos vários grupos
de discussão (newsgroups) sobre Delphi existentes na Internet.

IMPORTANTE: Informamos não foram efetuados testes em todas as dicas ou rotinas listadas nesta seção.
Sendo assim, o uso das mesmas é de sua inteira responsabilidade.



Armazenamento de fotos em banco de dados

Para armazenar fotos num banco de dados, você deve primeiramente criar um campo do tipo Blob numa tabela (em alguns gerenciadores de banco de dados, como o ACCESS, o campo é do tipo OLE). No formulário onde os dados serão editados, insira um componente TDBImage (este componente irá exibir a foto), um TOpenPictureDialog e um TButton próximo ao componente TDBImage. Coloque na propriedade DataField do componente TDBImage, o nome do campo do tipo Blob que você criou na sua tabela. Digite a rotina a seguir no evento onClick do componente TButton:

if OpenPictureDialog1.Execute then
   DBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);

Assim que o botão (TBotton) for pressionado, ele abrirá a caixa de diálogo (TOpenPictureDialog) para seleção da foto que se deseja armazenar no banco de dados


Usando a tecla ENTER para saltar entre os campos de um formulário

Para usar a tecla ENTER para saltar entre os campos de um formulário no lugar da incômoda tecla TAB, digite o código a seguir no evento onKeyPress de todos os componentes TEdit ou TDBEdit do formulário:

if key = #13 then
begin
   key := #0;
   PostMessage(handle, WM_KEYDOWN, VK_TAB, 1);
end;


Soar um beep

Para fazer o micro soar um beep (para alertar o usuário de um erro na digitação, por exemplo), basta chamar a seguinte função:

MessageBeep(0);

 


Lendo e gravando em arquivos texto

Para ler e gravar em arquivos texto, tente usar as seguintes funções e procedures deste esboço de uma rotina Delphi:

var
   Texto: String;
   ArquivoTexto: TextFile;
{handle do arquivo texto}
begin
   AssignFile(ArquivoTexto,'C:\teste\arqtexto.txt');
{Associa o arquivo a uma                                                       variável do tipo TextFile}
   Reset(ArquivoTexto);
{Abre o arquivo texto}
   Readln(ArquivoTexto,Texto); {Armazena a linha atual do arquivo na string Texto
                                e salta para a próxima linha}
   Writeln(ArquivoTexto,Texto); {Grava a string Texto no arquivo texto}
   ReWrite(ArquivoTexto); {Recria o arquivo texto}
   CloseFile(ArquivoTexto); {Fecha o arquivo texto}
end;

 


Função de leitura do número de série do disco rígido

Para você que quer proteger seu software contra cópias piratas, esta função lhe será muito útil:

function SerieHD(FDrive: String):String;
var
   NrSerie,DirLen,Flags: DWord;
   DLabel:Array[0..11] of Char;
begin
try
   GetVolumeInformation(PChar(FDrive+':\'),DLabel,12,@NrSerie,DirLen,Flags,nil,0);
   Result:=InttoHex(NrSerie,8);
except
   Result:='';
end;
end;

 


 

Página Principal Componentes Dicas e rotinas Links Livros Sites de Busca

 

Última atualização em 28/02/1999
Borland Delphi© é marca registrada da Inprise Corporation
Todas as outras marcas são de propriedade de seus respectivos proprietários
1