什么是图形上下文(在Java中)?
这个术语我已经见过好几次了,它是什么意思?它是一个可以用来在SWING/AWT程序上绘制图形原语的对象 例如:什么是图形上下文(在Java中)?,java,user-interface,Java,User Interface,这个术语我已经见过好几次了,它是什么意思?它是一个可以用来在SWING/AWT程序上绘制图形原语的对象 例如: class JMyComponent extends JComponent { @Override public void paint(Graphics g) { // g contains graphics context g.fillOval(...); // draw an oval on the component
class JMyComponent extends JComponent
{
@Override
public void paint(Graphics g) {
// g contains graphics context
g.fillOval(...); // draw an oval on the component
// more graphics primitives...
}
}
在几乎所有其他UI框架中都有类似的上下文。Java或非Java。要在Java中绘制任何图形,都需要图形上下文。图形上下文是属于类java.awt.graphics的对象
图形上下文是图形对象,它包含在Java中进行绘图所需的所有内容 在大多数AWT和Swing组件中,可以替代paint(Graphics g)方法来实现自己的绘图方法。它在图形上下文(图形对象)中传递,供您在其上执行绘图方法。“上下文”是许多java开发人员用于承载状态信息的类的通用名称。因此,我们肯定会看到许多不同的类名包含上下文
桌面Java中的图形上下文通常表示类或类。它们包含有关图形特性的信息:颜色、线特性、剪裁区域等 图形上下文是逻辑输出设备。例如,这可能是一个计算机屏幕 Java中的图形类允许与图形上下文交互 有关更多信息:
我会向上投票,但在Swing中,自定义绘制是通过重写paintComponent(…)方法来完成的。@camickr:这取决于您想做什么。如果您的JPanel除了自定义图形外不包含任何内容(即不包含任何组件),则覆盖paint()是一种可行的方法,因为它具有较少的计算开销。@DreamspacePresident。阅读上的Swing教程。