0

我担心我只是提出了一个重复十次的问题,但是我一直在尝试用谷歌搜索这个很长一段时间,但没有找到任何东西,无论是一般情况下,甚至在 SO 上都没有,所以我开始认为这是值得的射击。

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

此外,实现 AWT 小部件和实现 Swing 小部件之间的主要区别是什么?从实施者的角度来看甚至有区别吗?

4

2 回答 2

0

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

我与 AWT 的合作不多,但从 GUI 开发人员的角度来看,Swing 要好得多。从实现者的角度来看,我所知道的唯一区别是 Swing 对侦听器的使用。

同样,您可以查看源代码以了解有什么不同。这是javax.swing.JFrame类的源代码

于 2012-08-13T14:20:37.900 回答
0

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

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

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

于 2012-10-22T16:17:56.430 回答