Fórum Limitar número de linhas do memo #221938

24/03/2004

0

Olá!

Existe alguma forma de limitar o número de linhas que um Memo vai poder ter????

Como poderia ser feito?

bb!


Delphi32

Delphi32

Responder

Posts

24/03/2004

Lucas Silva

Olha se resolve seu problema ai.
procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
   if (Memo1.Lines.Count = 2) and (key <> #8) then // 8 é o backSpace
     Key := 0;
end;



Responder

Gostei + 0

24/03/2004

Delphi32

[quote:e6d9877479=´Lucas Alves Silva´]Olha se resolve seu problema ai.
procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
   if (Memo1.Lines.Count = 2) and (key <> #8) then // 8 é o backSpace
     Key := 0;
end;
[/quote:e6d9877479]

Quase isso Lucas...
Coloquei aqui o seguinte:

if ((Memo1.Lines.Count = 5) and (key <> 8)) or
   ((Memo1.Lines.Count = 4) and (key = 13)) then
     Key := 0;
//supondo que eu queira limitar para quatro linhas


O único problema do seu código é que ele trava a inserção de caracteres depois do primeiro caracter na 5ª linha (isso para o exemplo acima...)

sabe como acertar isso? de qualquer maneira já foi uma luz...

obrigado!


Responder

Gostei + 0

24/03/2004

Lucas Silva

O único problema do seu código é que ele trava a inserção de caracteres depois do primeiro caracter na 5ª linha (isso para o exemplo acima...)


Acredtito que sejam poucos os caracteres que você vai deixar o usuário digitar. Tenta colocar o código deles lá no if.... tipo assim... if key <> #0 and if key <> 2..

e assim vai....
Deu pra entender + ou -?


Responder

Gostei + 0

24/03/2004

Paulo_amorim

[quote:e5e0258fa6=´Lucas Alves Silva´]
O único problema do seu código é que ele trava a inserção de caracteres depois do primeiro caracter na 5ª linha (isso para o exemplo acima...)


Acredtito que sejam poucos os caracteres que você vai deixar o usuário digitar. Tenta colocar o código deles lá no if.... tipo assim... if key <> #0 and if key <> 2..

e assim vai....
Deu pra entender + ou -?[/quote:e5e0258fa6]

Olá

Creio que nesse caso se possa usar
if not ( Key in (0, 2, 8) ) then

Acontece que vc pode deixar ele fazer o que vc bem entender...travar, mudar o Foco (funciona bem tambem), etc...

Até+


Responder

Gostei + 0

24/03/2004

Lucas Silva

[quote=´Paulo_Amorim´]
Creio que nesse caso se possa usar
if not ( Key in (#0, 2, 8) ) then


é verdade, este jeito é bem melhor...mais limpo.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar