在我以前的Java SWT实验室中,它讨论了使用Composites然后添加main()
public static void main(String[] args){
Display display = new Display();
Shell shell = new Shell(display);
Calculator calc = new Calculator(shell, SWT.NONE);
calc.pack();
shell.pack();
shell.open();
while(!shell.isDisposed()){
if(!display.readAndDispatch()) display.sleep();
}
}
但为什么这样做呢。我不应该使用壳牌吗?可能是什么原因?
答案 0 :(得分:1)
所以你的问题是为什么你应该扩展Composite
而不应该扩展Shell
?好吧,你可以使用你想要的任何方法。但是,如果你把你的东西直接放到shell中,那么在其他地方重用这些代码要困难得多。例如。使用Composite
作为组件的基类,可以让你的代码更加可重用(你不能真正将Shell放在另一个Composite的中间)。