编写AWT小部件

时间:2012-08-13 13:37:23

标签: java widget awt

我担心我只是提出十次重复的问题,但我一直试图谷歌这一段时间没有找到任何东西,无论是一般还是在这里,所以我开始思考值得一试。

我想知道,在Java中实现AWT小部件有什么必要吗?需要实施什么才能以适当的方式响应重绘,调整大小,放置,焦点行为以及小部件可能或应该做的所有其他事情?我设法找到的所有文章都从小部件用户的角度描述了这个过程,而不是从实现它们的角度来看。

此外,实现AWT窗口小部件和实现Swing窗口小部件之间的主要区别是什么?是否与实施者的观点存在差异?

2 个答案:

答案 0 :(得分:0)

学习如何编写AWT小部件的最佳方法可能是查看AWT小部件的源代码。这是java.awt.Frame类的源代码。

我没有使用AWT,但从GUI开发人员的角度来看,Swing要好得多。从实现者的角度来看,我所知道的唯一区别是Swing对Listeners的使用。

同样,您可以查看源代码以查看不同之处。这是javax.swing.JFrame

的源代码

答案 1 :(得分:0)

除了AWT小部件更简单之外,没有太多区别。

您可以扩展4个类中的一个:Component,Container,Canvas,Panel。前两个是重量级的,后两个是轻量级的(没有本机窗口系统对等)。覆盖paint(Graphics)(或update())和getPreferredSize()以使其可见,然后查看javadocs以覆盖事件处理方法。

当然,您知道此链接http://docs.oracle.com/javase/6/docs/api/java/awt/Component.html