Fórum Keybd_event cfe. o if ele tem que ficar home ou end? #341656

11/05/2007

0

Pessoal preciso colocar num edit o sinal de + e gostaria de quando no edit NAO estiver vazio ou seja com um sinal de + ele coloque na sequencia ++ e assim por diante

+++++

tentei assim
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
IF trim(edt.text) = ´´ then begin
Keybd_Event(VK_Home, 0, 0, 0);
edt.text:=´+´;
end else
if trim(edt.text) <> ´´ then
Keybd_Event(VK_End, 0, 0, 0);
edt.text:=´+´;
end;


Mais nao funciona.

Como seria o codigo correto

Grato
Adriano.


Adriano_servitec

Adriano_servitec

Responder

Posts

11/05/2007

Massuda

Você está sempre atribuindo o mesmo texto ao edit. Acho que seria assim (sem precisar simular teclas!)...
procedure TSeuForm.SeuSpeedButtonClick(Sender: TObject); 
begin 
  if Trim(SeuEdit.Text) = ´´ then begin 
    // não entendi o que precisa fazer quando ele está vazio...
  end 
  else begin
    // inclui um + no fim do texto
    SeuEdit.Text := Trim(SeuEdit.Text) + ´+´; 
  end;
...



Responder

Gostei + 0

12/05/2007

Adriano_servitec

Obrigado amigo

Alias nem precisou de mais linha do que essa
SeuEdit.Text := Trim(SeuEdit.Text) + ´+´;



Valeu


Responder

Gostei + 0

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

Aceitar