import java.io.*; import org.eclipse.jface.viewers.*; import org.eclipse.jface.window.*; import org.eclipse.swt.*; import org.eclipse.swt.widgets.*; public class Explorer extends applicationWindow { public Explorer() { super(null); } PRotected Control createContents(Composite parent) { TreeViewer tv = new TreeViewer(parent); tv.setContentProvider(new FileTreeContentProvider()); tv.setInput(new File("C://")); return tv.getTree(); } public static void main(String[] args) { Explorer w = new Explorer(); w.setBlockOnOpen(true); w.open(); Display.getCurrent().dispose(); } }
运行该程序,您将看到与图 8 相似的结果。
图 8. Explorer(版本 1)
除了样板文件代码,我们只需向 Hello, World 程序添加 9 行代码就可做到这一点。正如您可能猜想的那样,程序用 File 的 toString() 方法来显示这些文件,这不是我们真正想要的。要改变这一点,我们需要提供一个标签提供程序。