什么是更好的选择?适用于:Swing 和 AWT
我问这个问题是因为我想知道什么可以节省我更多的时间。
什么是更好的选择?适用于:Swing 和 .awt
对于大多数用途,Swing 是一个更健壮和强大的库。
我问这个问题是因为我想知道什么可以节省我更多的时间。
以什么方式为您节省更多时间?
这个问题的真正主旨是什么?
编辑
你状态:
我正在制作一个 CAD 程序,这就是我需要知道的原因。
我不确定此时我是否会非常担心“清除与顶部绘图”,并且会更担心具有良好逻辑实体分离的整体程序设计。图形细节可以根据您的测试结果进行测试和更改,但更重要的是您拥有强大而灵活的设计,它允许您插入任何类型的图形设计。
在所有其他评论之上;
Swing 有一个聪明的重绘管理器,它可以用来只重绘屏幕的受损区域,而不是需要重绘整个屏幕。
Swing 也是双缓冲的,这使得它的更新不太容易出现闪烁。
一般来说,清除和重绘是首选方法。尝试在顶部绘制的程序中经常存在视觉错误。
在顶部绘图的典型用例是消除与难以绘制小部件的程序相关的一些问题(例如具有非常复杂的细节和许多功能的 CAD 程序)。然而,即使在这些情况下,通常也有一些方法可以避免在顶部绘制。例如,将 CPU 密集型小部件绘制到缓冲区,然后在该小部件中没有的内容发生更改时绘制缓冲区。
swing 将比 awt 节省更多时间,因为 swing 的所有组件代码都是用 java 编写的,而 awt 组件的代码是用非 java 的本地语言编写的,因此 awt 的编译时间比 swing 多。在节省时间的情况下最好使用 Swing。