Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2011
Choclito Choclito is offline
Miembro
 
Registrado: jul 2004
Posts: 169
Poder: 20
Choclito Va por buen camino
Problema con recepcion de datos con comport

Buenas amigos del foro
Trabajo con delphi 7 y firebird 2.1, comentarles lo que pasa
Tengo un amigo que tiene una placa parallax y el lo configuro para que presionando un boton muestre el mensaje:
Consultorio A
Ahora bien yo en delphi con la ayuda del foro me baje el componente comport y quiero leer el mensaje, el codigo que tengo es el siguiente;
Código Delphi [-]

procedure TF_Principal.ComPortRxChar(Sender: TObject; Count: Integer);
var
  Str: String;
begin
  ComPort.ReadStr(Str, count);
  edit1.Text:=edit1.Text+ Str;
end;
El problema es que en el edit1.text me muestra:
Consultorio A|
al finalizar una linea rara
La consulta es la siguiente:
Como puedo hacer para que me muestre sin esa linea al finalizar?
Que tengo que cambiar para que cada que lee del puerto com se limpie el edit1, probe con
Código Delphi [-]

procedure TF_Principal.ComPortRxChar(Sender: TObject; Count: Integer);
 var
   Str: String;
 begin
 edit1.text:='';  
ComPort.ReadStr(Str, count);
   edit1.Text:=edit1.Text+ Str;
 end;
pero no muestra nada
La cuestion es que con el dato leido quiero realizar acciones para mostrar datos en un grid, pero la verdad nose en que evento del edit hacer que con el dato leido realice acciones
Gracias por sus aportes que puedan realizar
Responder Con Cita
  #2  
Antiguo 02-11-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Choclito.

No he usado comport por lo que hice una búsqueda sobre el tema: comport.

Pero al ver que me arrojo como resultado 113 hilos relacionados, decidí dejarte la tarea de investigarlos...

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 03-11-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.271
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Creo que a opción más sencilla es que elimines ese carácter sobrante, una vez que recoges la información.
En lugar de leer directamente sobre el Edit, lee sobre una variable de tipo String, y luego pasa el texto al Edit, eliminando el último carácter (para eso puedes usar la función Copy).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 03-11-2011
Choclito Choclito is offline
Miembro
 
Registrado: jul 2004
Posts: 169
Poder: 20
Choclito Va por buen camino
Gracias neftali

Muchas gracias por el mensaje, no habia pensando en eso, hago los cambios y ahi les comento.
MI consulta es como actualizar la variable o el memo o edit para que en cada que lea los datos se actualice, al momento de lecturar me muestra lo siguiente:
Consultorio A|
y si vuelvo a lecturar me muestra:
Consultorio A|Consultorio A y asi va incrementando
No se donde colocar codigo para que lea datos y solo muestre
Consultorio A cada que leo
hice este cambio;
Código Delphi [-]
procedure TF_Principal.ComPortRxChar(Sender: TObject; Count: Integer);
var

  cadena,Str: String;
begin
edit1.text:='';
  ComPort.ReadStr(Str, count);
  edit1.Text:=edit1.Text+ Str;

end;
pero no hace que por mas que presione mas de dos veces solo me me muestre Consultorio A
Estare atento a sus comentarios amigos del foro
Responder Con Cita
  #5  
Antiguo 03-11-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.271
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Pues posiblemente puedes utilizar el carácter que te está "molestando" para eso, si es que no está definido expresamente para ello. ;-)

(1) Limpias el control Edit y comienzas a leer.
(2) Se trata de leer caracteres hasta que te llegue el "|";
(3) En ese momento acabas la lectura; Quitas el carácter y te quedas con el resto.

Cuando te vuelvan a pulsar, vuelves al paso 1.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
ComPort (serial) - instalacion problema ibstk Varios 14 06-10-2011 21:27:26
Recepcion de archivo en cgi bitbow Internet 1 03-10-2010 21:53:36
Recepción de mail Sole_l Servers 0 10-11-2009 22:28:49
Recepcion por el puerto serie (ComPort) manu Varios 0 12-02-2007 00:37:26
Envio y recepcion de datos pichi Vignola Varios 3 23-11-2006 00:19:53


La franja horaria es GMT +2. Ahora son las 20:14:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi