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