[Lazarus-es] Refresh no funciona
Jerónimo Sánchez
socger en gmail.com
Dom Ago 9 11:33:28 CEST 2015
Muchas gracias, Pancho.
Te he estado siguiendo en la lisa de lazarus.es y veo que pudistes salir
muy bien de todos los consejos.
Bonito por tu parte. Un abrazo y todo un detalle por este aporte
El martes, 4 de agosto de 2015, 19:30:50 (UTC+3), Pancho escribió:
>
> Tengo el siguiente código
>
> procedure TfrmPesaje.UpdPeso(cLectura:String);
> var
> lcTramas:TStringList;
>
> lnIndice,lnNeto,lnNegativo,lnFueraRango,lnFueraEqui,lnTeclaAd,lnCantTramas:integer;
> lcEstadoA,lcEstadoB,lcEstadoC,lcPeso,lcTara,lcDecimales,lcLectura:string;
> begin
> lcEstadoA:='';
> lcEstadoB:='';
> lcEstadoC:='';
> lcPeso:='';
> lcTara:='';
> lcTramas:= TStringList.Create;
> Split('|', cLectura, lcTramas);
> lnCantTramas:=lcTramas.count;
> if lnCantTramas=5 then
> begin
> lcEstadoA:=lcTramas.Strings[1];
> lcEstadoB:=lcTramas.Strings[2];
> lcEstadoC:=lcTramas.Strings[3];
> lcPeso:=copy(lcTramas.Strings[4],1,6);
> lcTara:=copy(lcTramas.Strings[4],7,6);
> {Analisis Estado A}
> lcEstadoA:=HextoBin(lcEstadoA);
> lcDecimales:=copy(lcEstadoA,6,3);
> case lcDecimales of
> '010':lnPesoComa:=0;
> '011':lnPesoComa:=1;
> '100':lnPesoComa:=2;
> '101':lnPesoComa:=3;
> '110':lnPesoComa:=4;
> else
> lnPesoComa:=0;
> end;
> {Analisis Estado B}
> lcEstadoB:=HextoBin(lcEstadoB);
> lnNeto:=StrToInt(copy(lcEstadoB,8,1));
> lnNegativo:=StrToInt(copy(lcEstadoB,7,1));
> lnFueraRango:=StrToInt(copy(lcEstadoB,6,1));
> lnFueraEqui:=StrToInt(copy(lcEstadoB,5,1));
> {Analisis Estado C}
> lcEstadoC:=HextoBin(lcEstadoC);
> lnTeclaAd:=StrToInt(copy(lcEstadoB,5,1));
> {Calculos Finales}
> lnPesoTara:=StrToInt(lcTara)/(Exp(LN(10)*lnPesoComa));
> lnPesoTot:=StrToInt(lcPeso)/(Exp(LN(10)*lnPesoComa));
> if lnNegativo=1 then
> lnPesoTot:=lnPesoTot*(-1);
> {Actualizo campo de Peso Actual}
> txtPesoAct.Text:=FloatToStr(lnPesoTot);
> txtPesoAct.Refresh;
> application.ProcessMessages;
> end;
>
> Que se ejecuta por cada lectura del puerto serie.
>
> txtPesoAct es una caja de texto en la cual pongo el peso de la balanza.
>
> Si solo hago el Refresh no se refresca el control...
> Si le agrego application.ProcessMessages tampoco se refresca el control.
>
> El control solo se refresca cuando hago un showmessage desde otro control.
>
> Tengo otra pantalla que tiene un codigo similar pero el que recibe la info
> es una lista, en ese caso funciona sin inconvenientes...
>
> Espero sus comentarios.
>
> Pancho
> Córdoba
> Argentina
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20150809/ee7d2bd6/attachment-0002.html>
More information about the Lazarus-es
mailing list