最近有需求要使用swt集成word,网上资料五花八门,所以在这里写了这篇博文
先上图
布局的话自己改一改就可以,这个demo没有调整,之后我会陆续发布
环境:jdk8
下载之后,将文件夹中 swt.jar添加到本地library中即可使用
// 这是一个简单的示例
public class SwtDemo {
public static void main(String[] args) {
new SwtDemo().open();
}
public void open() {
Display display = Display.getDefault();
Shell shell = new Shell();
shell.setSize(600, 600);
shell.setText("word");
// 必须得设置布局,不设置的话不能正常显示
shell.setLayout(new FillLayout());
Button button = new Button(shell, SWT.NONE);
//显示word的菜单栏,这个貌似没什么用,有大佬的话可以解释一下
shell.setMenuBar(new Menu(shell, SWT.BAR));
OleFrame oleFrame = new OleFrame(shell, SWT.NONE);
button.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent arg0) {
shell.close();
}
});
button.setText("退出");
// 在这里替换成为本地文件地址
OleClientSite clientSite = new OleClientSite(oleFrame, SWT.NONE, new File("文件地址,修改为自己本地文件"));
clientSite.doVerb(OLE.OLEIVERB_PRIMARY);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.close();
}
}