Eclipse是基于SWT(Standard Wiget Toolkit)开发的,那么,使用SWT来开发基于Eclipse的插件就是最合适不过的了。SWT程序可作为独立的客户端程序运行,也可以集成在Eclipse插件中供插件程序使用。
对于SWT程序的学习,是开发Eclipse插件的基础。在Java核心包中,并没有将SWT加入,这意味着,想要运行SWT程序,必须从外部引入Jar包。
1.在Eclipse中建立一个普通Java工程;
2.切换到Java Build Path下,点击“Add external JARS”,定位到Eclipse安装目录下的plugins目录,找到对应的JAR包,确定。
3.在src目录下,新建一个Java类,命名为HelloWorld.java;
在main方法下,加入以下语句:
import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Color; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell;public class HelloWorld {
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.setText("Hello World");
shell.setBounds(100, 100, 200, 50);
shell.setLayout(new FillLayout());
Label label = new Label(shell, SWT.CENTER);
label.setText("Hello World");
Color red = new Color(display, 255, 0, 0);
label.setForeground(red);
shell.open();
//循环检测窗口帧是否被关闭
while (!shell.isDisposed()) {
//readAndDispatch()负责从程序事件队列中读取事件,时间队列为空,返回 false,否则返回 true
if (!display.readAndDispatch())
//UI 线程睡眠,直至程序有更多的事件需要处理
display.sleep();
}
//当窗口帧已关闭,释放相关资源
red.dispose();
display.dispose();
}
}
4.“ctrl+shift+o”引入对应jar类,“ctrl+shift+f”格式化,最后运行程序。
注意:每一个swt实例只能有一个Display实例对象,可以有多个Shell实例对象。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于