我对 Java 很陌生,我正在使用 Netbeans 程序。我对如何导入图像甚至使用图形绘制图像感到非常困惑。我已经设置了场景,并且想要在屏幕上导入多个图像,但我陷入了将图像放入场景的第一步。任何关于如何使图形工作的建议都是一个很好的开始。
package spaceinvaders;
import java.util.Scanner;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
/**
*
* @author Twissted
*/
public class SpaceInvaders extends Application {
@Override
public void start ( Stage stage ) throws Exception {
Pane root = new Pane ();
Scene scene = new Scene ( root, 500, 500, Color.BLACK );
stage.setTitle ( "Space Invaders" );
stage.setScene ( scene );
System.out.println ( "Please enter how many rows of aliens you wish to encounter: " );
int r1;
Scanner keyboard = new Scanner ( System.in );
r1 = keyboard.nextInt ();
stage.show ();
}
public static void main (String [] args ) {
launch ( args );
}
}
我知道这可能非常简单,我很擅长编程部分,但即使在互联网搜索之后我也无法弄清楚如何让该程序的图形部分工作。
最佳答案
您可以创建一个 ImageView
并将其添加到您的 Pane
中。移动其 LayoutX
和 LayoutY
属性以将其放置在屏幕上。在示例中,文件 sprite.png
必须与类位于同一包空间中。确保以正确的方式打包。
ObservableList<Node> children = pane.getChildren();
ImageView sprite = new ImageView(getClass().getResource("sprite.png").toString());
children.add(sprite);
sprite.setLayoutX(300d);
sprite.setLayoutY(20d);
我还是建议你使用FXGL不过。
关于JavaFX 导入图像和图形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50456348/