public class NavegadorEmbebidoSWT extends Composite {
private Browser browser;
ProgressBar progressBar;
boolean busy;
int index;
public NavegadorEmbebidoSWT(Composite parent, String urlEntorno) {
super(parent, SWT.NONE);
GridLayout layout = new GridLayout(2, true);
setLayout(layout);
browser = new Browser(this, SWT.NONE);
GridData layoutData = new GridData(GridData.FILL_BOTH);
layoutData.horizontalSpan = 2;
layoutData.verticalSpan = 2;
browser.setLayoutData(layoutData);
//Barra de progreso
progressBar = new ProgressBar(this, SWT.NONE);
progressBar.setLocation(600, 5);
progressBar.setSize(108, 23);
browser.addProgressListener(new ProgressListener() {
public void changed(ProgressEvent event) {
if (event.total == 0)
return;
int ratio = event.current * 100 / event.total;
if (progressBar != null)
progressBar.setSelection(ratio);
busy = event.current != event.total;
if (!busy) {
index = 0;
}
}
public void completed(ProgressEvent event) {
if (progressBar != null)
progressBar.setSelection(0);
busy = false;
index = 0;
}
});
browser.setUrl(urlEntorno);
}
}
Simplemente instanciáis un composite de este tipo y ya tenéis un navegador con su barra de progreso embebido. Con el método browser.setUrl podéis poner la url que queráis cargar.
No hay comentarios:
Publicar un comentario