Ver Mensaje Individual
  #6  
Antiguo 04-05-2011
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Reputación: 20
FGarcia Va por buen camino
Bueno, este ejemplo viene en el programa de ejemplo de la carpeta Examples que se instala junto con el componente. Tiene algunas modificaciones para otra cosa que use antes pero te sirve.


Código Delphi [-]
{-----------------------------------------------------------------------------
  Procedure: ComPortRxChar
  Author:    Administrator
  Date:      05-ago-2008
  Arguments: Sender: TObject; Count: Integer
  Result:    Este es el procedimiento clave para recibir datos desde el puerto
             serie. Cualquier caracter que entra por el puerto serie lo coloca
             -en este caso- en el componente Memo. Si se necesita recibir
             caracteres diferentes y para cada uno de esos caracteres realizar
             una accion diferente, se puede usar una estructura de tipo Case Of
             o IF ELSE
             Si los datos a recibir son de una longitud constante o vienen de-
             limitados por un caracter de inicio o por un caracter terminador
             es preferible usar el componente ComDataPacket en vez de este
             Evento. NOTA: NO SE PUEDEN USAR PARA UN MISMO PUERTO AMBOS. SON
             EXCLUYENTES.
-----------------------------------------------------------------------------}
procedure TForm1.ComPortRxChar(Sender: TObject; Count: Integer);
var
  Str: String;
begin
  //Aqui leemos lo que entro al puerto serie
  ComPort.ReadStr(Str, Count);

  //Aqui escribimos en el Memo. Coloque comentarios para no usar esta parte
  Memo.Text := Memo.Text + Str;

  {Quite los comentarios para usar esta seccion de ejemplo IF ELSE. Pruebe con
  el checkbox de nueva linea checado y sin checar}
  {if Str = 'A' then
    ShowMessage('Recibi una letra A')
  else if Str = '1' then
    ShowMessage('Recibi un numero 1')
  else
    ShowMessage('Recibi esto: ' + Str);}
  
end;
__________________
ESTO ES UN FORO ... NO UN MÓVIL
¿Por qué no escribir de una manera comprensible para que los humanos lo podamos entender?
Responder Con Cita