Tengo un formulario que tiene un componente TWebBrower
que carga un documento HTML. Los datos sobre el documento HTML se actualiza cada pocos segundos, a veces varias veces cada segundo y actualizar el valor en Delphi usando:Optimizar la pintura de TWebBrowser para reducir el uso total de la CPU
DOMDocument.getElementById(elementID).innerHTML := someValue;
El problema es que quiero cerrar la ventana/navegador web para evitar que la pintura/actualizando hasta que todas mis actualizaciones estén completas. ¿Hay alguna manera de hacer esto? ¿Llamaría a
SendMessage(WebBrowser.Handle,WM_SETREDRAW,0,0);
Me gustaría algo de ayuda en la optimización de este código para que mi uso total de la CPU no sea continuamente alto.
'interfaz IViewObject' tiene las funciones' Freeze' y 'UnFreeze' que pueden ser útiles para esto. Trataré de preparar un ejemplo. – TLama
Creo que necesitamos ver código real aquí (incluido el HTML). 'WM_SETREDRAW' realmente funciona (en una prueba muy limitada que hice). pero como 'innerHTML' funciona de forma asíncrona, creo que sería un problema sincronizarlo ... – kobik
@kobik, pero si dices que' innerHTML' es asincrónico, me temo que incluso 'IViewObject' no ayuda. Tendría que ser algún control para el estado listo. – TLama