Olá galera, nesta Quick Tips irei mostrar como usar um Set em Delphi, iremos definir o nosso Set para aceitar somente caracteres de 0 até 9 e o outro de A até Z, e logo em seguida iremos restringir a digitação em um Edit permitindo a somente o que esta no nosso Set.
Vamos ao exemplo
Adicione 2 Edit(edtNumeros, EdtLetras)
Agora iremos definir nosso set
unit uPrincipal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TfrmPrincipal = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
TNumeros = set of Char; //Definimos o nosso set e dizemos o seu tipo
TLetras = Set of Char; //Definimos o nosso set e dizemos o seu tipo
var
frmPrincipal: TfrmPrincipal;
const
Numeros: TNumeros = ['0'..'9']; //Variável que representa o Set TNumeros
Letras : TLetras = ['a'..'z', 'A'..'Z']; //Variável que representa o Set TLetras
EdtNumeros : onKeyPress
procedure TfrmPrincipal.EdtNumerosKeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in Numeros ) then
raise Exception.Create( Format('Caracter %s inválido!!!',
[QuotedStr( Key ) ]) );
end;
EdtLetras : onKeyPress
procedure TfrmPrincipal.EdtLetrasKeyPress(Sender: TObject; var Key: Char);
begin
if not ( Key in Letras ) then
raise Exception.Create( Format('Caracter %s inválido!!!',
[QuotedStr( Key ) ]) );
end;
Com este recurso que temos no Delphi, podemos limitar a digitação de nossos usuários, evitando erros.
Fico por aqui até a próxima Quick Tips.
Um abraço
Wesley Y
wyamazack@rwsolution.com.br