Cara, tenta usar o SelectNext e passa como parâmetro Screen.activecontrol

 

Procure no Help eu não lembro os parâmetros de cabeça.

[]'s

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Anderson
Enviada em: quinta-feira, 12 de julho de 2007 15:11
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Re: Enter pelo Tab não dá certo

 

continua na mesma...

o perform ele não executa...

Algúém entende o pq ?

--- Em delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br> , 
"Anderson" 
<[EMAIL PROTECTED]> escreveu
>
> Faltou isto aqui
> key := #0;
> 
> Ficando desta maneira
> if key=#13 then
> begin
> ShowMessage('Teste');
> Key := #0;
> perform(wm_nextdlgctl,0,0);
> key:=#0;
> end;
> 
> ----- Original Message ----- 
> From: Anderson 
> To: delphi-br@yahoogrupos.com.br <mailto:delphi-br%40yahoogrupos.com.br>  
> Sent: Thursday, July 12, 2007 2:21 PM
> Subject: [delphi-br] Enter pelo Tab não dá certo
> 
> 
> galera, abaixo está o fonte de um componente edit que estou 
fazendo. 
> O enter pelo tab não funciona nele. Gostaria que alguém pudesse 
me 
> auxiliar nele pois no keypress eu coloquei assim:
> 
> o show messase é exeuctado mas o perform não acontece nada
> 
> if key=#13 then
> begin
> ShowMessage('Teste');
> perform(wm_nextdlgctl,0,0);
> key:=#0;
> end;
> 
> o fonte tá ai, meu msn é [EMAIL PROTECTED] (meu e-mail tb)
> 
> aguardo auxilio e deste já agradeço
> 
> unit EditPlus;
> 
> interface
> 
> uses
> Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, 
> Dialogs,
> StdCtrls, Mask;
> 
> type
> TDataType = (Numero,Cpf,Telefone,CEP,CNPJ,Data,Texto);
> TEditPlus = class(TEdit)
> private
> { Private declarations }
> FDataType:TDataType;
> Procedure SetDataType(Const Value:TDataType);
> protected
> { Protected declarations }
> Procedure KeyPress(Var key:char); override;
> procedure WMSetFocus( var message: TMessage ); message 
> WM_SetFocus;
> procedure WMKillFocus( var message: TMessage ); message 
> WM_KillFocus;
> public
> { Public declarations }
> Constructor Create(Aowner:TComponent);Override;
> Destructor Destroy; Override;
> published
> { Published declarations }
> Property DataType :TDataType read FDataType Write SetDataType;
> Property DataTipe :TDataType read FDataType Write SetDataType;
> end;
> 
> procedure Register;
> 
> implementation
> 
> procedure Register;
> begin
> RegisterComponents('Standart', [TEditPlus]);
> end;
> 
> procedure TEditPlus.SetDataType;
> begin
> if FDataType <> value then
> FDataType := Value;
> end;
> 
> procedure TEditPlus.KeyPress;
> begin
> If FDataType = Numero Then
> Begin
> if Key in [',','.'] then key:=DecimalSeparator;
> if key=DecimalSeparator then
> begin
> if pos(Key,Text) = 0 then
> key:=Key
> else
> Key:=#0;
> end;
> If not (Key in 
> 
['0'..'9',#8,#22,#13,#5,#19,#24,#4,#1,#6,#7,#9,#127,DecimalSeparator])
> Then Key := #0;
> end;
> if key=#13 then
> begin
> ShowMessage('Teste');
> SelectNext(ActiveControl,True,True);
> key:=#0;
> end;
> end;
> 
> Constructor TEditPlus.Create;
> begin
> inherited Create(Aowner);
> BorderStyle:=bsNone;
> Height:=13;
> Color:=clBtnFace;
> end;
> 
> Destructor TEditPlus.Destroy;
> begin
> Inherited Destroy;
> end;
> 
> procedure TEditPlus.WMSetFocus( var message: TMessage );
> begin
> Color:=clWhite;
> inherited;
> end;
> 
> procedure TEditPlus.WMKillFocus( var message: TMessage );
> begin
> Color:=clBtnFace;
> inherited;
> end;
> 
> end.
> 
> 
> 
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>

 



[As partes desta mensagem que não continham texto foram removidas]

Responder a