<div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div>Miren hice lo siguiente y aun presenta el mismo error...<br><br></div>1) Agregue un hilo<br><br>    { TMiHilo }<br><br>    TMiHilo = class(TThread)<br>    private<br>      fStatusText: string;<br>      procedure MostrarPeso;<br>    protected<br>      procedure Execute; override;<br>    public<br>      constructor Create(CreaSuspendido: boolean);<br>    end;<br><br></div>2) En la definicion del formulario coloque esta propiedad como publica<br><br>  public<br>    lnPesoTot:real;<br><br></div>3) Agregue los procedimientos de mi hilo<br><br>{ TMiHilo }<br>procedure TMiHilo.MostrarPeso;<br>begin<br>    frmPesaje.txtPesoAct.Text:=FloatToStr(frmPesaje.lnPesoTot);<br>    frmPesaje.txtPesoAct.Refresh;<br>end;<br><br>procedure TMiHilo.Execute;<br>var<br>  newStatus : string;<br>  aaa:string;<br>begin<br>  fStatusText := 'Ejecutando...';<br>  while (not Terminated) and (true) do begin<br>      sleep(2000);<br>      fStatusText := 'Mostrando Peso ...';<br>      Synchronize( @MostrarPeso );<br>  end;<br>end;<br><br>constructor TMiHilo.Create(CreaSuspendido: boolean);<br>begin<br>  FreeOnTerminate := True;<br>  inherited Create(CreaSuspendido);<br>end; <br><br></div>4) Agregue una variable en el procedimiento de mi formulario denomidado UpdPeso<br><br>MiHilo : TMiHilo;<br><br></div>para poder hacer referencia a mi hilo.<br><br></div>5) Finalmente agregue el siguiente codigo en el procedimiento UpdPeso<br><br>       //creamos el hilo, pero no lo iniciamos<br>       MiHilo := TMiHilo.Create(True); // Con el parametro true no se inicia automaticamente<br>       if Assigned(MiHilo.FatalException) then<br>          raise MiHilo.FatalException;<br>       //si no hay ninguna excepción lo iniciamos<br>       MiHilo.Start;<br><br></div>Compila perfecto pero solo actualiza cuando me muevo con el mouse sobre la barra de herramientas, como en los casos anteriores. O bien cuando muestro el ShowMessage.<br><br></div>Se les ocurre algo mas?<br><br></div>Saludos,<br><br></div>Pancho<br></div>Córdoba<br></div>Argentina<br></div><div class="gmail_extra"><br><div class="gmail_quote">2015-08-05 20:55 GMT-03:00 Martin Gomez <span dir="ltr"><<a href="mailto:mmgomez@gmail.com" target="_blank">mmgomez@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif"><span style="font-size:12.8000001907349px">Con el Sincronize(UpdPeso) tampoco? Eso debería aislarte del multithreading interno de LazSerial (si es que tiene)</span><br></div><span class=""><div class="gmail_extra"><br><div class="gmail_quote"><br></div>-- <br><div><div dir="ltr"><span style="font-size:small;font-family:tahoma,sans-serif"><div style="display:inline">​</div></span><font style="font-size:small" face="tahoma, sans-serif">Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.<div style="display:inline">​ ​</div></font><i style="font-size:small;font-family:tahoma,sans-serif">Linus Torvalds</i><br></div></div>
</div></span></div>
<br>_______________________________________________<br>
Lazarus-es mailing list<br>
<a href="mailto:Lazarus-es@lists.lazarus.freepascal.org">Lazarus-es@lists.lazarus.freepascal.org</a><br>
<a href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es" rel="noreferrer" target="_blank">http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es</a><br>
<br></blockquote></div><br></div>