Ver Mensaje Individual
  #4  
Antiguo 21-11-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 24
Caro Va por buen camino
Cita:
Empezado por deprimera Ver Mensaje
cuando ejecuto el codigo q m pasast m hace 2 enter, deja un renglon entre medio en blanco y si borro todo desp no lo vuelve a validar
Hola de nuevo, ayer te respondi a la rapida sin ver los problemas que podía tener ese codigo, ademas que estoy con poco tiempo, acabo de hacer una prueba y si, no funciona bien, nada bien, aún arreglandolo no funciona bien en esos eventos (OnKeyDown, OnKeyUp).

Lo que puedes hacer es utilizar el evento OnMessage del ApplicationEvent que se encuentra en la paleta Additional.

Código Delphi [-]
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
  var Handled: Boolean);
var
 FilaActual : Integer;
begin
 //Capturamos cuando se ha presionado una tecla
 if (Msg.message=WM_KEYDOWN) then
  if ActiveControl = Memo1 then //Verificamos si ha sido en el Memo
   begin
     //Obtenemos la fila actual
     FilaActual := Memo1.Perform(EM_LINEFROMCHAR, Memo1.SelStart, 0);
 
     if (Memo1.Lines[FilaActual+1]<>'') AND Not(Msg.wParam in [vk_delete,8,vk_left,vk_right,vk_down,vk_up]) then
        Msg.wParam := 0;
 
     if Length(Memo1.Lines[FilaActual])=2 then
      begin
       if (FilaActual=Memo1.Lines.Count-1) AND (Msg.wParam<>VK_RETURN) then
        //Envíamos el Enter al Memo
        PostMessage(Memo1.Handle, WM_KEYDOWN, VK_RETURN, 0);
      end;
   end;
end;

Conste que no esta bien controlado, pero puedes aumentar codigo sobre eso, espero que alguien mas pueda ayudarte a controlar para que todo funcione bien. Por ahora recibe solo 3 caracteres y se presiona el enter, una vez que ya tienes lleno, te puedes mover entre las lineas borrar pero no aumentar mas texto, como te digo falta controlar.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita