SWT中的许多组件是不允许被继承的
解决方法:
step1:在子类中重写checkSubclass()方法
step2:构造方法中调用checkSubclass()方法
示例代码:
package My; import org.eclipse.swt.SWT; import org.eclipse.swt.events.FocusAdapter; import org.eclipse.swt.events.FocusEvent; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Text; public class MyTextField extends Text { public MyTextField(Composite parent, int style) { super(parent, style); checkSubclass(); //这里编写你的代码 } @Override protected void checkSubclass() { // TODO 自动生成的方法存根 } }