Авторизация

Логин: Пароль:
Регистрация Забыли свой пароль?

Переход на случайную страницу

Страницы: 1
Переход на случайную страницу
Как сделать переход в TBrowser на страницу со случайным номером? Есть фотки с адресами вида http://.../num, хочется при загрузке программы загружать случайную фотку.
Ну, во-первых, надо сделать обработчик события Enter для TWebBrowser (так правильнее он называется). А далее использовать метод Navigate, которому передавать URL страницы со случайным номером. В итоге вот что получается:
Код
procedure TForm1.WebBrowser1Enter(Sender: TObject);
var x: string;
begin
Randomize;
x:=IntToStr(Random(100000));
WebBrowser1.Navigate('adres/'+x);
end;
Изменено: motorway11 - 30.04.2010 16:19:22
Accende lumen sensibus, infude ainorem corbidus!
Спасибо, а как проанализировать код страницы на наличие некоторой подстроки? Например, я хочу, чтобы на странице было какое-то слово, и если оно есть, совершать какие-то действия далее.
Что-то я попробовал вставить один компонент для работы с сетью, а Касперский выдал предупреждение об опасности программы. Теперь страницы в Дельфи не загружаются smile:( Это я к тому, что TWebBrowser не самый удобный компонент. По крайней мере, есть другие, где получение кода сделано удобнее. А здесь нужно писать довольно большой код. Там же - одна функция.
Accende lumen sensibus, infude ainorem corbidus!
Ну ладно, может быть, действительно какой-нибудь готовый компонент-парсер HTML взять. Хотя интересно было бы и посмотреть решение с минимальными затратами на основе компонентов Дельфи. У меня пока просто не получается это сделать для вас
Изменено: motorway11 - 30.04.2010 17:50:33
Accende lumen sensibus, infude ainorem corbidus!
TWebBrowser норм компонент, если ты умеешь с ним работать. Вот функция, которая возвращает код открытой страницы в TWebBrowser'е
Код
function WB_GetHTMLCode(WebBrowser: TWebBrowser; ACode: TStrings): Boolean;
var
  ps: IPersistStreamInit;
  ss: TStringStream;
  sa: IStream;
begin
  ps := WebBrowser.Document as IPersistStreamInit;
  ss := TStringStream.Create('');
  try
    sa := TStreamAdapter.Create(ss, soReference) as IStream;
    Result := Succeeded(ps.Save(sa, True));
    if Result then ACode.Text := ss.Datastring;
  finally
    ss.Free;
  end;
end;

Как видите все очень просто.
свободный страннык
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)