今天无聊,打开uap论坛,看到一个帖子在问,怎么在Dialog里显示网页。看了里面的答案说是用JWebBrowser(需要引入第三方jar包),然后试了试,应该由于jar包没有找对,怎么都没成功。后来就自己想,怎么实现,想到Eclipse里不正好有内置浏览器吗?于是去插件文件夹里搜下“browser”关键字,还真搜出来一个jar包,打开里面的类,有看到关联到了org.eclipse.swt.win32.win32.x86_3.4.1.v3452b.jar包下Browser的类,再一Ctrl+Shift+T,发现NClib里自带这个jar包。于是搜了一下网上搜了一下,使用SWT打开网页,尽然这么简单,还可以点击链接,活脱脱一个浏览器啊!
package nc.ui.plugin.view;
import nc.bs.logging.Logger;
import org.eclipse.swt.SWT;
import org.eclipse.swt.SWTError;
import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
public class WebDialog {
public static void main(String[] args) {
String path = "www.baidu.com";
Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
Browser browser;
try {
browser = new Browser(shell, SWT.NONE);
} catch (SWTError e) {
Logger.error(e);
display.dispose();
return;
}
browser.setUrl(path);
shell.setText("网页浏览");
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}