Java 2D图形-组件中项目的优先级
我有一个简单的问题。我不熟悉Java 2D API,所以我的问题是:Java 2D图形-组件中项目的优先级,java,graphics,2d,paintcomponent,java-2d,Java,Graphics,2d,Paintcomponent,Java 2d,我有一个简单的问题。我不熟悉Java 2D API,所以我的问题是: 是否需要手动设置在paintComponent()中绘制的内容的优先级?您绘制的第一个内容将是最后面的部分。所以 public void paintComponent(Graphics g) { g.drawRect(10, 10, 80, 30); // Drawn in back g.drawRect(20, 20, 70, 40); // Drawn in middle g.drawRect(10
是否需要手动设置在paintComponent()中绘制的内容的优先级?您绘制的第一个内容将是最后面的部分。所以
public void paintComponent(Graphics g) {
g.drawRect(10, 10, 80, 30); // Drawn in back
g.drawRect(20, 20, 70, 40); // Drawn in middle
g.drawRect(10, 10, 10, 10); // Drawn in front
...
}
如果您让Java先绘制某个对象,它将首先绘制,并且您在上面绘制的任何对象都将绘制在您绘制的第一个对象之上。您不能指定优先级,但可以指定每个对象的绘制顺序(在顺序代码中)。这就是一个例子
public void paint(Graphics screen) {
sortByDepth(screen);
backFaceCulling(screen);
applyProjection(screen);
drawCube(screen);
}
下面这本书可以帮上大忙:。此外,您可能希望查看是否要绘制以下内容:
另见: