DBMaskedit
Gostaria de saber aonde eu posso,encontrar um componete DBMaskEdit
(Freeware).
Desde já agradeço a atenção.
(Freeware).
Desde já agradeço a atenção.
Lnunes
Curtidas 0
Respostas
Guinther
19/02/2005
Pq não seta a máscara no TField e usa um DBEdit?
GOSTEI 0
Aroldo Zanela
19/02/2005
Colega,
www.torry.net (DB-Aware Components > Visual > Edits and Memos). Entretanto, conforme já foi mencionado, não há nenhuma necessidade.
www.torry.net (DB-Aware Components > Visual > Edits and Memos). Entretanto, conforme já foi mencionado, não há nenhuma necessidade.
GOSTEI 0
Asales
19/02/2005
No Delphi 5 eu utilizava um [b:c938d5da9b]componente DBMaskEdit[/b:c938d5da9b] (download em http://codecentral.borland.com/Item/14468 ) e optei por ele porque no sistema já haviam dados cadastrados e a alteração da máscara no TField modificou todos os dados cadastrados.
Estou migrando o sistema para Delphi 2007 e ocorreu o seguinte problema no procedimento DataChange do componente:
[b:c938d5da9b]Código Delphi 5[/b:c938d5da9b]:
procedure TDBMaskEdit.DataChange(Sender : TObject);
begin
if (fDataLink.Field = nil) or (FDataLink.Field.asVariant = NULL) then
Text := ´´
else
Text := FDataLink.Field.asVariant;
end; //DataChange
[b:c938d5da9b]Código com problemas - Delphi 2007[/b:c938d5da9b]:
if (fDataLink.Field = nil) or (FDataLink.Field.asVariant = varNull) then
- alterei ´asVariant = [b:c938d5da9b]NULL[/b:c938d5da9b]´ para ´asVariant = [b:c938d5da9b]varNull[/b:c938d5da9b]´
- compilação Ok, mas aparece a seguinte mensagem ao executar o programa: Could not convert variant of the type (String) into type (Double)
[b:c938d5da9b]Código funcionando mas duvidoso - Delphi 2007[/b:c938d5da9b]:
Depois de alguma pesquisa nos componentes db controls do delphi 2007 consegui chegar ao seguinte código que funcionou:
if FDataLink.Field <> nil then
Text := FDataLink.Field.Text
else
Text := ´´;
Apesar de estar funcionando fico receoso de apresentar problemas futuros no sistema e por isso gostaria da ajuda de vocês para uma análise do código.
Obrigado.
Estou migrando o sistema para Delphi 2007 e ocorreu o seguinte problema no procedimento DataChange do componente:
[b:c938d5da9b]Código Delphi 5[/b:c938d5da9b]:
procedure TDBMaskEdit.DataChange(Sender : TObject);
begin
if (fDataLink.Field = nil) or (FDataLink.Field.asVariant = NULL) then
Text := ´´
else
Text := FDataLink.Field.asVariant;
end; //DataChange
[b:c938d5da9b]Código com problemas - Delphi 2007[/b:c938d5da9b]:
if (fDataLink.Field = nil) or (FDataLink.Field.asVariant = varNull) then
- alterei ´asVariant = [b:c938d5da9b]NULL[/b:c938d5da9b]´ para ´asVariant = [b:c938d5da9b]varNull[/b:c938d5da9b]´
- compilação Ok, mas aparece a seguinte mensagem ao executar o programa: Could not convert variant of the type (String) into type (Double)
[b:c938d5da9b]Código funcionando mas duvidoso - Delphi 2007[/b:c938d5da9b]:
Depois de alguma pesquisa nos componentes db controls do delphi 2007 consegui chegar ao seguinte código que funcionou:
if FDataLink.Field <> nil then
Text := FDataLink.Field.Text
else
Text := ´´;
Apesar de estar funcionando fico receoso de apresentar problemas futuros no sistema e por isso gostaria da ajuda de vocês para uma análise do código.
Obrigado.
GOSTEI 0
Khundalini
19/02/2005
Se seus dados são alterados pela máscara, então vc ñ está atentando para o uso correto da máscara no que diz respeito a salvar ou não caracteres da máscara no valor do campo.
Isso é ajustado no EditMask de um TMaskEdit em tempo de design, e tb pode ser feito na propriedade EditMask de um TField tb em tempo de design.
Sds.,
Rubem Rocha
Manaus, AM
Isso é ajustado no EditMask de um TMaskEdit em tempo de design, e tb pode ser feito na propriedade EditMask de um TField tb em tempo de design.
Sds.,
Rubem Rocha
Manaus, AM
GOSTEI 0
Leonardo Gazio
19/02/2005
Pq não seta a máscara no TField e usa um DBEdit?
Não é a mesma coisa, esteticamente não fica bonito, não aparecem os uniderline "_" no texto da máscara como em um objeto herdado do TMaskEdit, acho que é por isso que ele não quer usar o Editmask do TField, assim como eu...
Não é a mesma coisa, esteticamente não fica bonito, não aparecem os uniderline "_" no texto da máscara como em um objeto herdado do TMaskEdit, acho que é por isso que ele não quer usar o Editmask do TField, assim como eu...
GOSTEI 0