Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   webbrowser randonzime (https://www.clubdelphi.com/foros/showthread.php?t=63186)

malditango 02-02-2009 17:25:50

webbrowser randonzime
 
hola :
queria que me saquen de duda como hacer q un webbrowser abra una pagina determinada cada v ez q se ejecute la aplicacion cada ejecucion una pagina diferente estaba intentando con e ste codigo pero me lanza la ultima pagina del randonzime es decir la 4 espero su ayuda y gracias de antemano

Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
var
   I: Integer;
 begin
   Randomize;
   for I := 1 to 5 do begin

If i = 1 Then webbrowser1.Navigate('http://tux-hack.net/publitr/GBInfo1.html');
If i = 2 Then webbrowser1.Navigate('http://tux-hack.net/publitr/GBInfo2.html');
If i = 3 Then webbrowser1.Navigate('http://tux-hack.net/publitr/GBInfo3.html');
If i = 4 Then webbrowser1.Navigate('http://tux-hack.net/publitr/GBInfo4.html');
end;

dec 22-02-2009 10:37:41

Hola,

Yo me aproximaría al asunto con algo así:

Código Delphi [-]
var
  URLs: array[0..4] of string = (
    'http://www.clubdelphi.com',
    'http://www.clubdelphi.com/foros/',
    'http://www.clubdelphi.com/trucos/',
    'http://componentes.clubdelphi.com/',
    'http://www.terawiki.clubdelphi.com/'
  );

procedure TForm1.Button1Click(Sender: TObject);
begin
  Randomize();
  ShowMessage(
    URLs[Random(Length(URLs)-1)]
  );
end;

Como ves, primero preparamos un "Array de cadenas" con las URLs necesarias. Después, para obtener una URL aleatoria de entre dichas URLs, usamos algo como:

Código Delphi [-]
URLs[Random(Length(URLs)-1)]

La función "Random()" nos retornará un número aleatorio entre el 0, y, en este caso, el número de URLs en nuestro "Array" menos uno, puesto que el número de elementos es 5, pero, el último elemento del "Array" tendrá un índice 4. Total, que obteniendo un índice válido ya podemos recoger una de las URLs de nuestro "Array".

Quizá existan mejores formas de hacerlo, más aún, estoy seguro de que así es, pero, al menos es una posible solución. ;)


La franja horaria es GMT +2. Ahora son las 06:30:03.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi