PDA

Ver la Versión Completa : ListBox1


DM2005
06-07-2006, 03:00:12
Hola, tengo un Listbox1, en el que carga un .txt,

ListBox1.Items.LoadFromFile('C:\teste\teste.txt');

y mi .txt tiene "X" item, y quiero seleccionar uno de los item,
me llame una pagina .htm y la visualize en un WebBrowser1.
Intente coloca indice al ListBox1, pero siempre me trae la misma pagina para todos los item del .txt.

procedure TFormForm01.ListBox1DblClick(Sender: TObject);
begin
ListBox1.Selected [ 1 ] := true;
WebBrowser1.Navigate('C:\teste\ejemplo.htm');
end;

gracias

Delphius
06-07-2006, 04:17:26
A ver si te entiendo... ¿tienes un .txt en el que tienes ingresados varios sitios (la dirección)... y que al hacer doble clic en algún item se cargue la página correspondiente?

Si es así, fijate en hacer algo como esto:


procedure TFormForm01.ListBox1DblClick(Sender: TObject);
begin
//ListBox1.Selected [ 1 ] := true;
WebBrowser1.Navigate(ListBox1.items.strings[Listbox1.Items.ItemIdex]);
end;

Lo puse al vuelo... no se si andará.. no tengo Delphi abierto en este momento.
Al hacer doble clic, en el item, este queda registrado en la propiedad ItemIndex, tu solo debes detectar el texto de esa posición. Creo que la idea está.
Saludos,

DM2005
06-07-2006, 05:55:17
Voy a verificar si es lo que necesito.
gracias

DM2005
06-07-2006, 06:08:07
hola de nuevo, sabes que carga bien la pagina,
//ListBox1.Selected [ 1 ] := true;
WebBrowser1.Navigate(ListBox1.items.strings[1]);
pero mi idea es que con un buttom, el pase para la siguinte pagina, y si repito el procedimiento, asignandole otro item
WebBrowser1.Navigate(ListBox1.items.strings[2]);
el recorre todo y me trae la ultima, sera que me esta faltando algo.

procedure TFormForm01.FormCreate(Sender: TObject);
begin
ListBox1.Items.LoadFromFile('C:\Arquivos de programas\Cyber\Access\IParquivo.txt');
end;



procedure TFormForm01.SpeedButton2Click(Sender: TObject);
begin
//ListBox1.Selected [ 1 ] := true;
WebBrowser1.Navigate(ListBox1.items.strings[1]);
//ListBox1.Selected [ 2 ] := true;
WebBrowser1.Navigate(ListBox1.items.strings[2]);
end;

creo que es asi, gracias

Delphius
06-07-2006, 06:22:57
Pues, a ver... quieres que al pulsar un boton que se dirija a la siguiente página, que corresponde al siguiente item.

Esto lo puedes conseguir incrementando el valor de ItemIndex cada vez que se pulsa el botón, recuerda que se debe verificar que no se sobrepase el límite:

procedure TFormForm01.SpeedButton2Click(Sender: TObject);
begin
with ListBox1.Items do
begin
if ItemIndex < Count-1
then ItemIndex := ItemIndex + 1
else ShowMessage('Se ha llegado al último');
WebBrowser1.Navigate(strings[ItemIndex]);
end;
end;

Saludos,

PD: Utiliza las etiquetas [ DELPHI ] [ /DELPHI ] (sin espacios), para escribir el código... verás que es más legible el texto que introduzcas allí.

DM2005
06-07-2006, 06:35:48
Me sirvio, gracias