Ver Mensaje Individual
  #12  
Antiguo 23-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Bueno. "La madre del cordero" quiere decir lo que imaginabas: que ahí podía estar el "problema". Y entrecomillo problema, porque, si se trata de lo que últimamente estamos comentando no es un problema, sino que no se asignan métodos para ningún evento y así estos ni llegan a "dispararse" siquiera.

A ver. Si en tu aplicación estás usando un componente "IdHttp" que has añadido previamente a un formulario, y utilizas los eventos de este componente, lo que tienes que hacer es utilizar dicho componente para realizar la tarea.

En el código que muestras más arriba haces uso de un componente "IdHttp", pero lo creas tú en tiempo de ejecución:

Código Delphi [-]
http := TIdHTTP.Create(Self);

Ahora bien, ¿dónde asignas los métodos oportunos para los eventos que necesitas usar en el componente? En ningún lado... así que los eventos no se dispararán nunca en la vida.

Si añadiste un componente "IdHttp" al formulario y este se llama "IdHttp1", por ejemplo, lo que tienes que hacer es utilizar este componente y no crear otro... ¿para qué vas a crear un componente "IdHttp" si ya añadiste uno al formulario? No es lo habitual... o una cosa u otra, pero no ambas.

Ahora supongamos que el componente "IdHttp" que añadiste al formulario se llama "IdHttp1". Entonces podrías cambiar tu código de este modo:

Código Delphi [-]
procedure TFrmPrincipal.BEnviarClick(Sender: TObject);
var
  params: TStrings;
  respuesta: string;
begin
  params := TStringList.Create;
  try
    params.Add('titulo='+ETitulo.Text);
    params.Add('autor='+EAutor.Text);
    params.Add('noticia='+MNoticia.Text);
    respuesta := IdHttp1.Post('http://tekkenbolivia.net/archivos/php/noticias/envia_noticias.php', params);
    ShowMessage('Respuesta: ' + respuesta);
  finally
    params.Free;
  end;
end;

¿Se coge la idea?
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita