不会吧
这里对JFace有兴趣的人这么少么?
还是都是在潜水。
我看很多人喜欢Swing,作为有力挑战者,有强大的开发环境eclipse支持的jface怎么这么少啊
个人感觉jface架构总体看不错,但是api里面pass了太多的Object,Object[]作为参数
上手比较困难。感觉上觉得是for developer but not programmar
这个也和eclipse很相似
ibm里面强人太多了,阿三也很厉害
这里对JFace有兴趣的人这么少么?
还是都是在潜水。
我看很多人喜欢Swing,作为有力挑战者,有强大的开发环境eclipse支持的jface怎么这么少啊
个人感觉jface架构总体看不错,但是api里面pass了太多的Object,Object[]作为参数
上手比较困难。感觉上觉得是for developer but not programmar
这个也和eclipse很相似
ibm里面强人太多了,阿三也很厉害
希望能对新手有所帮助,毕竟example实在太少了
在j2se1.3.1_08下调试通过,IDE:eclipsev3M3,时间不多,省去了javadoc
/**
* Date Author Changes Key Version
* -------------------------------------------------------------------
* 2003/11/03 allenhe 新規作成 0.0.1
*/
package org.allen.eclipse.jeditor;import org.allen.eclipse.jeditor.document.JDocument;
import org.allen.eclipse.jeditor.listener.JTextInputListener;
import org.allen.eclipse.jeditor.listener.JTextListener;
import org.eclipse.jface.text.TextViewer;
import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;/**
* <pre>
* main class
* </pre>
*/
public class JEditor extends ApplicationWindow {
//必须实现
public JEditor() {
super(null);
} protected Control createContents(Composite parent) {
setTitle("JEditor");
parent = resizeCompositeBounds(parent);
TextViewer textviewer =
new TextViewer(parent, SWT.BORDER|SWT.MULTI | SWT.V_SCROLL);
//JDocument:extends org.eclipse.jface.text.AbstractDocument
textviewer.setDocument(new JDocument());
//JTextInputListener : extends org.eclipse.jface.text.ITextInputListener
textviewer.addTextInputListener(new JTextInputListener());
//JTextListener : extends org.eclipse.jface.text.ITextListener
textviewer.addTextListener(new JTextListener());
return textviewer.getControl();
} /**
* <pre>
* Main Entry
* </pre>
* @param args
*/
public static void main(String[] args) {
JEditor jeditor = new JEditor();
jeditor.setBlockOnOpen(true);//阻赛线程
jeditor.open();
Display.getCurrent().dispose();//调用上层SWT组件释放资源
} private void setTitle(String title){//设置标题栏
getShell().setText(title); //shell:上层SWT组件
} private Composite resizeCompositeBounds(Composite parent) {
//主要作用,重新定义显示区域的长和宽,这个函数可选
Rectangle rect = parent.getBounds();
rect.height = 300;
rect.width = 400;
parent.setBounds(rect);
return parent;
}
}
//JTextInputListener : extends org.eclipse.jface.text.ITextInputListener
显示有一些问题