[Lazarus-es] [Fpc] Refresh no funciona

francisco prieto fajprieto en gmail.com
Jue Ago 6 04:17:44 CEST 2015


Pero también. Probé. Con label en realidad debo mostrar el peso por
pantalla, mañana intentaré poner todo el poseso dentro del hilo y
dispararle desde el onrxdata de lazserial

El mié, 5 de agosto de 2015 23:13, francisco prieto <fajprieto en gmail.com>
escribió:

> Tedit
>
> El mié, 5 de agosto de 2015 22:59, Maxi <maximiliano.duarte en gmail.com>
> escribió:
>
>> que control es?
>>
>> El 5 de agosto de 2015, 21:28, francisco prieto <fajprieto en gmail.com>
>> escribió:
>>
>>> Miren hice lo siguiente y aun presenta el mismo error...
>>>
>>> 1) Agregue un hilo
>>>
>>>     { TMiHilo }
>>>
>>>     TMiHilo = class(TThread)
>>>     private
>>>       fStatusText: string;
>>>       procedure MostrarPeso;
>>>     protected
>>>       procedure Execute; override;
>>>     public
>>>       constructor Create(CreaSuspendido: boolean);
>>>     end;
>>>
>>> 2) En la definicion del formulario coloque esta propiedad como publica
>>>
>>>   public
>>>     lnPesoTot:real;
>>>
>>> 3) Agregue los procedimientos de mi hilo
>>>
>>> { TMiHilo }
>>> procedure TMiHilo.MostrarPeso;
>>> begin
>>>     frmPesaje.txtPesoAct.Text:=FloatToStr(frmPesaje.lnPesoTot);
>>>     frmPesaje.txtPesoAct.Refresh;
>>> end;
>>>
>>> procedure TMiHilo.Execute;
>>> var
>>>   newStatus : string;
>>>   aaa:string;
>>> begin
>>>   fStatusText := 'Ejecutando...';
>>>   while (not Terminated) and (true) do begin
>>>       sleep(2000);
>>>       fStatusText := 'Mostrando Peso ...';
>>>       Synchronize( @MostrarPeso );
>>>   end;
>>> end;
>>>
>>> constructor TMiHilo.Create(CreaSuspendido: boolean);
>>> begin
>>>   FreeOnTerminate := True;
>>>   inherited Create(CreaSuspendido);
>>> end;
>>>
>>> 4) Agregue una variable en el procedimiento de mi formulario denomidado
>>> UpdPeso
>>>
>>> MiHilo : TMiHilo;
>>>
>>> para poder hacer referencia a mi hilo.
>>>
>>> 5) Finalmente agregue el siguiente codigo en el procedimiento UpdPeso
>>>
>>>        //creamos el hilo, pero no lo iniciamos
>>>        MiHilo := TMiHilo.Create(True); // Con el parametro true no se
>>> inicia automaticamente
>>>        if Assigned(MiHilo.FatalException) then
>>>           raise MiHilo.FatalException;
>>>        //si no hay ninguna excepción lo iniciamos
>>>        MiHilo.Start;
>>>
>>> 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.
>>>
>>> Se les ocurre algo mas?
>>>
>>> Saludos,
>>>
>>> Pancho
>>> Córdoba
>>> Argentina
>>>
>>> 2015-08-05 20:55 GMT-03:00 Martin Gomez <mmgomez en gmail.com>:
>>>
>>>> Con el Sincronize(UpdPeso) tampoco? Eso debería aislarte del
>>>> multithreading interno de LazSerial (si es que tiene)
>>>>
>>>>
>>>> --
>>>>>>>> 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.
>>>> ​ ​
>>>> *Linus Torvalds*
>>>>
>>>> _______________________________________________
>>>> Lazarus-es mailing list
>>>> Lazarus-es en lists.lazarus.freepascal.org
>>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Lazarus-es mailing list
>>> Lazarus-es en lists.lazarus.freepascal.org
>>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>>
>>>
>>
>>
>> --
>> El que pregunta aprende, y el que contesta aprende a responder.
>>
>> No a la obsolecencia programada:
>> http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml
>>
>> Linux User #495070
>> http://domonetic.com/blog
>> _______________________________________________
>> Lazarus-es mailing list
>> Lazarus-es en lists.lazarus.freepascal.org
>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20150806/d5d35eaf/attachment-0002.html>


More information about the Lazarus-es mailing list