<div dir="ltr"><div><div><div><div><div><div><div><div><div><div>Tengo el siguiente código<br><br>procedure TfrmPesaje.UpdPeso(cLectura:String);<br>var<br>  lcTramas:TStringList;<br>  lnIndice,lnNeto,lnNegativo,lnFueraRango,lnFueraEqui,lnTeclaAd,lnCantTramas:integer;<br>  lcEstadoA,lcEstadoB,lcEstadoC,lcPeso,lcTara,lcDecimales,lcLectura:string;<br>begin<br>  lcEstadoA:='';<br>  lcEstadoB:='';<br>  lcEstadoC:='';<br>  lcPeso:='';<br>  lcTara:='';<br>  lcTramas:= TStringList.Create;<br>  Split('|', cLectura, lcTramas);<br>  lnCantTramas:=lcTramas.count;<br>  if lnCantTramas=5 then<br>     begin<br>       lcEstadoA:=lcTramas.Strings[1];<br>       lcEstadoB:=lcTramas.Strings[2];<br>       lcEstadoC:=lcTramas.Strings[3];<br>       lcPeso:=copy(lcTramas.Strings[4],1,6);<br>       lcTara:=copy(lcTramas.Strings[4],7,6);<br>       {Analisis Estado A}<br>       lcEstadoA:=HextoBin(lcEstadoA);<br>       lcDecimales:=copy(lcEstadoA,6,3);<br>       case lcDecimales of<br>            '010':lnPesoComa:=0;<br>            '011':lnPesoComa:=1;<br>            '100':lnPesoComa:=2;<br>            '101':lnPesoComa:=3;<br>            '110':lnPesoComa:=4;<br>       else<br>            lnPesoComa:=0;<br>       end;<br>       {Analisis Estado B}<br>       lcEstadoB:=HextoBin(lcEstadoB);<br>       lnNeto:=StrToInt(copy(lcEstadoB,8,1));<br>       lnNegativo:=StrToInt(copy(lcEstadoB,7,1));<br>       lnFueraRango:=StrToInt(copy(lcEstadoB,6,1));<br>       lnFueraEqui:=StrToInt(copy(lcEstadoB,5,1));<br>       {Analisis Estado C}<br>       lcEstadoC:=HextoBin(lcEstadoC);<br>       lnTeclaAd:=StrToInt(copy(lcEstadoB,5,1));<br>       {Calculos Finales}<br>       lnPesoTara:=StrToInt(lcTara)/(Exp(LN(10)*lnPesoComa));<br>       lnPesoTot:=StrToInt(lcPeso)/(Exp(LN(10)*lnPesoComa));<br>       if lnNegativo=1 then<br>          lnPesoTot:=lnPesoTot*(-1);<br>       {Actualizo campo de Peso Actual}<br>       txtPesoAct.Text:=FloatToStr(lnPesoTot);<br>       txtPesoAct.Refresh;<br>       application.ProcessMessages;<br>     end;  <br><br></div>Que se ejecuta por cada lectura del puerto serie.<br><br></div>txtPesoAct es una caja de texto en la cual pongo el peso de la balanza.<br><br></div>Si solo hago el Refresh no se refresca el control...<br></div>Si le agrego application.ProcessMessages tampoco se refresca el control.<br><br></div>El control solo se refresca cuando hago un showmessage desde otro control.<br><br></div>Tengo otra pantalla que tiene un codigo similar pero el que recibe la info es una lista, en ese caso funciona sin inconvenientes...<br><br></div>Espero sus comentarios.<br><br></div>Pancho<br></div>Córdoba<br></div>Argentina<br></div>