Componente
bom dia galera
To querendo criar um componente que herde de Tedit, só que eu não quero que esse edit aceite letras somente numeros e nem que fique com valor default zero, acretido que preciso sobreescrever o metodo on key press.
Alguem pode me dar uma luz
To querendo criar um componente que herde de Tedit, só que eu não quero que esse edit aceite letras somente numeros e nem que fique com valor default zero, acretido que preciso sobreescrever o metodo on key press.
Alguem pode me dar uma luz
Erick.rocha
Curtidas 0
Respostas
Bruno6652
03/02/2009
Isso mesmo, você precisa sobreescrever o método KeyPress do TEdit.
Aqui tem um modelo de como começar a desenvolver esse componente. Implementei para que não permita digitar letras, mas além disso precisa ser tratado a questão de apertar Enter, ESC e outras teclas importantes.
Espero ter ajudado.
Sou iniciante nessa parte de Desenvolvimento de Componentes também.
Até mais
Aqui tem um modelo de como começar a desenvolver esse componente. Implementei para que não permita digitar letras, mas além disso precisa ser tratado a questão de apertar Enter, ESC e outras teclas importantes.
unit EditNumber;
interface
uses
StdCtrls, Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
type
TEditNumber = class(TEdit)
private
{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
procedure KeyPress(var Key: Char); override;
published
{ Published declarations }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents(´Samples´, [TEditNumber]);
end;
{ TEditNumber }
procedure TEditNumber.KeyPress(var Key: Char);
begin
inherited;
if not (key in [´0´..´9´]) then
Key := 0;
end;
end.
Espero ter ajudado.
Sou iniciante nessa parte de Desenvolvimento de Componentes também.
Até mais
GOSTEI 0
Dbergkamps10
03/02/2009
Olá,
Procurepelo componente CurrencyEdit, da RXLib.
Att
Dalton
Procurepelo componente CurrencyEdit, da RXLib.
Att
Dalton
GOSTEI 0
Facc
03/02/2009
Ou use um compenente nativo do Delphi, o MASKEDIT
GOSTEI 0