从列表框中选择代理(IDHTTP)

时间:2012-07-17 20:54:28

标签: delphi proxy listbox idhttp

我正在准备申请。 IDHTTP:使用Get方法。但是有一些问题。我想创建一个Proxy列表并单击列表框项(代理地址)IDHTTP添加。对不起,我不太懂英文。

我的代码;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
begin
LabeledEdit1.Enabled:= true;
LabeledEdit2.Enabled:= true;
IdHTTP1.ProxyParams.ProxyServer:=LabeledEdit1.Text;
IdHTTP1.ProxyParams.ProxyPort:=StrToInt(LabeledEdit2.Text);

CheckBox1.Caption:='Kendi IP adresimi kullan.';

 end
 else
begin

LabeledEdit1.Enabled:= false;
LabeledEdit2.Enabled:= false;
IdHTTP1.ProxyParams.ProxyServer:='';
IdHTTP1.ProxyParams.ProxyPort:=StrToInt('0');

CheckBox1.Caption:='Proxy kullan.';

end;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
IdHTTP1.Get(Edit1.Text);
MessageDlg('Mission complated.', mtinformation,[mbOK],0);
end;

我想要;

我添加Listbox1代理..稍后..单击Listbox1项。稍后..BitBtn2点击。

感谢。

1 个答案:

答案 0 :(得分:3)

Listbox1.Items.Add('1.1.x.2.1:80');
Listbox1.Items.Add('1.2.x.x.5:60');
...

procedure TForm1.Listbox1Click(Sender: TObject); 
var
  I: Integer;
  S: String;
begin 
  I := Listbox1.ItemIndex;
  if I <> -1 then
  begin 
    S := Listbox1.Items[I];
    IdHTTP1.ProxyParams.ProxyServer := Fetch(S, ':'); 
    IdHTTP1.ProxyParams.ProxyPort := StrToInt(S); 
  end 
  else 
  begin 
    IdHTTP1.ProxyParams.ProxyServer := ''; 
    IdHTTP1.ProxyParams.ProxyPort := 0; 
  end; 
end; 

procedure TForm1.BitBtn2Click(Sender: TObject);        
begin        
  IdHTTP1.Get(Edit1.Text);        
  MessageDlg('Mission complated.', mtinformation,[mbOK],0);        
end;