4

我一直在搜索许多资源,但仍然找不到像样的解释。我为什么要使用它,它的目的是什么,为什么它与 JPanels 等不同?

4

3 回答 3

3

据我了解,Canvas它只是 Swing 的 JComponent 的 AWT 版本。你不应该直接使用它,除非你正在制作一个纯 AWT 应用程序。 你可以在这里找到更多信息

于 2013-06-19T17:54:50.390 回答
3

Canvas 的特殊之处在于,它可以像 Window 一样提供定制的硬件加速双缓冲和页面翻转。请参阅缓冲区策略

画布基本上是用来画画的。它还可以像 Panel 一样创建基于 AWT 的自定义组件,但与 Panel 不同的是它不能包含其他组件。

于 2013-06-19T17:59:30.717 回答
0
public class Canvas
extends Component
implements Accessible

Canvas 组件表示屏幕上的一个空白矩形区域,应用程序可以在该区域上进行绘制,或者应用程序可以从中捕获来自用户的输入事件。应用程序必须继承 Canvas 类才能获得有用的功能,例如创建自定义组件。必须重写paint 方法才能在画布上执行自定义图形。

画布基本上是用来画画的。它还可以像 Panel 一样创建基于 AWT 的自定义组件,但与 Panel 不同的是它不能包含其他组件。

于 2014-01-02T05:49:16.960 回答