Ver Mensaje Individual
  #15  
Antiguo 09-12-2009
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.293
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por cocute Ver Mensaje
He probado a quitar los memos y poner 2 tstringlist pero no me funciona, no hace nada, tambien he probado con Tstrings pero me da "error abtracto" o algo asi.
Que puede fallar? el mismo código con memos funciona.
Si a tí te va bien con los 2 memos (a mi no me funciona) puedes dejarlo así y en todo caso utilizar BeginUpdate y EndUpdate para eliminar los retardos de pintado.

Utilizar TStrings/TStringList no te aportará más velocidad, ya que las propias Lines del componente Memo ya son TStrings, simplemente era para que no tuvieras que utilizar TMemos sin ser necesario.

El primer código utilizando TStrings sería así:

Código PHP:
procedure TForm1.FormActivate(SenderTObject);
var
  
x:integer;
  
TS:TStrings;
begin

  TS 
:= TStringList.Create();
  try
    
TS.Text :=idHttp1.Get('http://www.aemet.es/es/eltiempo/prediccion/localidades?l=22001');

    while 
TS[0]<>'<h2 class="titulo">' do begin
      TS
.Delete(0);
    
end;

    while 
TS[TS.Count-1]<>'  <form name="frmMunicipio" method="get" action="/es/eltiempo/prediccion/localidades">' do begin
      TS
.Delete(TS.Count-1);
    
end;

    
TS.Delete(TS.Count-1);
    
TS.Delete(TS.Count-1);

    
TS[0]:= '<link rel="stylesheet" type="text/css" media="screen"  href="http://www.aemet.es/css/estilos.css" /><h2 class="titulo">';

    
TS.Text := StringReplace(TS.Text,
      
'/imagenes/',
      
'http://www.aemet.es/imagenes/',[rfReplaceAll]);

    
wb1.LoadFromStrings(TS);
  
finally
    FreeAndNil
(TS);
   
end;
end
El error abstracto suele dar cuando utilizas como constructor:

Código Delphi [-]
var
  TS:TStrings
begin
  TS := TStrings.Create();

En lugar de esto, ya que TStrings es una clase abstracta.

Código Delphi [-]
var
  TS:TStrings
begin
  TS := TStringList.Create()
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita